The Art of Multiprocessor Programming

by Maurice Herlihy (Author), Nir Shavit (Author)

On This Page

Description

Revised and updated with improvements conceived in parallel programming courses, The Art of Multiprocessor Programming is an authoritative guide to multicore programming. It introduces a higher level set of software development skills than that needed for efficient single-core programming. This book provides comprehensive coverage of the new principles, algorithms, and tools necessary for effective multiprocessor programming. Students and professionals alike will benefit from thorough show more coverage of key multiprocessor programming issues. This revised edition incorporates much-demanded updates throughout the book, based on feedback and corrections reported from classrooms since 2008 Learn the fundamentals of programming multiple threads accessing shared memory Explore mainstream concurrent data structures and the key elements of their design, as well as synchronization techniques from simple locks to transactional memory systems Visit the companion site and download source code, example Java programs, and materials to support and enhance the learning experience. show less

Tags

Recommendations

Member Recommendations

Member Reviews

1 review
This book gives a thorough introduction into shared-memory multicore programming in two parts. The first part is "Theory": it contains quite a few proofs and introduces essential notions like "sequential consistency (w.r.t. objects)". The second part is "Practice" and gives implementations of important parallel algorithms. Each chapter contains many exercises, which I did not look at.

The whole book (esp. the second part) contains many code examples and uses Java exclusively. Unfortunately, the Java memory-model (or any other memory-model) is not discussed at all. I found it particularly unfortunate that the first part uses Java-pseudo-code in the sense that it does not use "volatile" or Java-atomics but quietly assumes executions that show more are sequentially consistent (w.r.t. memory-model); in other words, one is expected not to ever compile the code. The second part, however, does not suffer from this.

The explanations are clear and the text is carefully written. The material is dense, deep, and often subtle (one has to allot some time to work through). The proofs in the first part are interesting and (with a bit of work) understandable. I would also have liked to see correctness proofs of some algorithms in part two, especially the lock-free ones since their correctness often remained obscure. To this last objection the authors would probably respond that such correctness proofs are beyond the scope of the book. I object anyway.
show less

Members

Recently Added By

Author Information

Author
3 Works 191 Members
Author
1+ Work 174 Members

Common Knowledge

Original publication date
2008
First words
The computer industry is undergoing, if not another revolution, certainly a vigorous shaking-up.

Classifications

Genres
Technology, Nonfiction, General Nonfiction
DDC/MDS
005.434Computer science, information & general worksComputer science, knowledge & systemsArtificial Intelligence/Virtual RealitySystems programming and programsSystems programsProcess management
LCC
QA76.6 .H5244ScienceMathematicsMathematicsInstruments and machinesCalculating machinesElectronic computers. Computer science
BISAC

Statistics

Members
174
Popularity
188,921
Reviews
1
Rating
(3.79)
Languages
Chinese, English, Korean
Media
Paper, Ebook
ISBNs
8
ASINs
1