|
Showing 1 - 3 of
3 matches in All Departments
Today 's embedded devices and sensor networks are becoming more and
more sophisticated, requiring more efficient and highly flexible
compilers. Engineers are discovering that many of the compilers in
use today are ill-suited to meet the demands of more advanced
computer architectures. Updated to include the latest techniques,
The Compiler Design Handbook, Second Edition offers a unique
opportunity for designers and researchers to update their
knowledge, refine their skills, and prepare for emerging
innovations. The completely revised handbook includes 14 new
chapters addressing topics such as worst case execution time
estimation, garbage collection, and energy aware compilation. The
editors take special care to consider the growing proliferation of
embedded devices, as well as the need for efficient techniques to
debug faulty code. New contributors provide additional insight to
chapters on register allocation, software pipelining, instruction
scheduling, and type systems. Written by top researchers and
designers from around the world, The Compiler Design Handbook,
Second Edition gives designers the opportunity to incorporate and
develop innovative techniques for optimization and code generation.
This book brings together two important trends: graph algorithms
and high-performance computing. Efficient and scalable execution of
graph processing applications in data or network analysis requires
innovations at multiple levels: algorithms, associated data
structures, their implementation and tuning to a particular
hardware. Further, programming languages and the associated
compilers play a crucial role when it comes to automating efficient
code generation for various architectures. This book discusses the
essentials of all these aspects. The book is divided into three
parts: programming, languages, and their compilation. The first
part examines the manual parallelization of graph algorithms,
revealing various parallelization patterns encountered, especially
when dealing with graphs. The second part uses these patterns to
provide language constructs that allow a graph algorithm to be
specified. Programmers can work with these language constructs
without worrying about their implementation, which is the focus of
the third part. Implementation is handled by a compiler, which can
specialize code generation for a backend device. The book also
includes suggestive results on different platforms, which
illustrate and justify the theory and practice covered. Together,
the three parts provide the essential ingredients for creating a
high-performance graph application. The book ends with a section on
future directions, which offers several pointers to promising
topics for future research. This book is intended for new
researchers as well as graduate and advanced undergraduate
students. Most of the chapters can be read independently by those
familiar with the basics of parallel programming and graph
algorithms. However, to make the material more accessible, the book
includes a brief background on elementary graph algorithms,
parallel computing and GPUs. Moreover it presents a case study
using Falcon, a domain-specific language for graph algorithms, to
illustrate the concepts.
This book brings together two important trends: graph algorithms
and high-performance computing. Efficient and scalable execution of
graph processing applications in data or network analysis requires
innovations at multiple levels: algorithms, associated data
structures, their implementation and tuning to a particular
hardware. Further, programming languages and the associated
compilers play a crucial role when it comes to automating efficient
code generation for various architectures. This book discusses the
essentials of all these aspects. The book is divided into three
parts: programming, languages, and their compilation. The first
part examines the manual parallelization of graph algorithms,
revealing various parallelization patterns encountered, especially
when dealing with graphs. The second part uses these patterns to
provide language constructs that allow a graph algorithm to be
specified. Programmers can work with these language constructs
without worrying about their implementation, which is the focus of
the third part. Implementation is handled by a compiler, which can
specialize code generation for a backend device. The book also
includes suggestive results on different platforms, which
illustrate and justify the theory and practice covered. Together,
the three parts provide the essential ingredients for creating a
high-performance graph application. The book ends with a section on
future directions, which offers several pointers to promising
topics for future research. This book is intended for new
researchers as well as graduate and advanced undergraduate
students. Most of the chapters can be read independently by those
familiar with the basics of parallel programming and graph
algorithms. However, to make the material more accessible, the book
includes a brief background on elementary graph algorithms,
parallel computing and GPUs. Moreover it presents a case study
using Falcon, a domain-specific language for graph algorithms, to
illustrate the concepts.
|
You may like...
Gloria
Sam Smith
CD
R238
R185
Discovery Miles 1 850
|