Books > Computing & IT > Computer hardware & operating systems > Computer architecture & logic design
|
Buy Now
Shared-Memory Parallelism Can Be Simple, Fast, and Scalable (Hardcover)
Loot Price: R3,253
Discovery Miles 32 530
|
|
Shared-Memory Parallelism Can Be Simple, Fast, and Scalable (Hardcover)
Series: ACM Books
Expected to ship within 10 - 15 working days
|
Parallelism is the key to achieving high performance in computing.
However, writing efficient and scalable parallel programs is
notoriously difficult, and often requires significant expertise. To
address this challenge, it is crucial to provide programmers with
high-level tools to enable them to develop solutions easily, and at
the same time emphasize the theoretical and practical aspects of
algorithm design to allow the solutions developed to run
efficiently under many different settings. This thesis addresses
this challenge using a three-pronged approach consisting of the
design of shared-memory programming techniques, frameworks, and
algorithms for important problems in computing. The thesis provides
evidence that with appropriate programming techniques, frameworks,
and algorithms, shared-memory programs can be simple, fast, and
scalable, both in theory and in practice. The results developed in
this thesis serve to ease the transition into the multicore era.
The first part of this thesis introduces tools and techniques for
deterministic parallel programming, including means for
encapsulating nondeterminism via powerful commutative building
blocks, as well as a novel framework for executing sequential
iterative loops in parallel, which lead to deterministic parallel
algorithms that are efficient both in theory and in practice. The
second part of this thesis introduces Ligra, the first high-level
shared memory framework for parallel graph traversal algorithms.
The framework allows programmers to express graph traversal
algorithms using very short and concise code, delivers performance
competitive with that of highly-optimized code, and is up to orders
of magnitude faster than existing systems designed for distributed
memory. This part of the thesis also introduces Ligra , which
extends Ligra with graph compression techniques to reduce space
usage and improve parallel performance at the same time, and is
also the first graph processing system to support in-memory graph
compression. The third and fourth parts of this thesis bridge the
gap between theory and practice in parallel algorithm design by
introducing the first algorithms for a variety of important
problems on graphs and strings that are efficient both in theory
and in practice. For example, the thesis develops the first
linear-work and polylogarithmic-depth algorithms for suffix tree
construction and graph connectivity that are also practical, as
well as a work-efficient, polylogarithmic-depth, and
cache-efficient shared-memory algorithm for triangle computations
that achieves a 2-5x speedup over the best existing algorithms on
40 cores. This is a revised version of the thesis that won the 2015
ACM Doctoral Dissertation Award.
General
Is the information for this product incomplete, wrong or inappropriate?
Let us know about it.
Does this product have an incorrect or missing image?
Send us a new image.
Is this product missing categories?
Add more categories.
Review This Product
No reviews yet - be the first to create one!
|
You might also like..
|