
The Art of Multiprocessor Programming, Revised Reprint
Morgan Kaufmann (Publisher)
Published on 25. June 2012
Book
Paperback/Softback
536 pages
978-0-12-397337-5 (ISBN)
Article exhausted; check for reprint
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 coverage of key multiprocessor programming issues.
Reviews / Votes
"The book could be used for a short course for practitioners looking for solutions to particular problems, a medium course for non-computer science major who would use multiprocessor programming in their own field, or a semester-long course for computer science majors." --Reference and Research Book NewsMore details
Language
English
Place of publication
San Francisco
United States
Publishing group
Elsevier Science & Technology
Target group
Professional and scholarly
Students in multiprocessor and multicore programming courses and engineers working with multiprocessor and multicore systems.
Dimensions
Height: 235 mm
Width: 191 mm
Weight
1090 gr
ISBN-13
978-0-12-397337-5 (9780123973375)
Copyright in bibliographic data and cover images is held by Nielsen Book Services Limited or by the publishers or by their respective licensors: all rights reserved.
Schweitzer Classification
Other editions
New editions

Maurice Herlihy | Nir Shavit | Victor Luchangco
The Art of Multiprocessor Programming
Book
12/2020
2nd Edition
Morgan Kaufmann
€73.50
Available immediately
Additional editions

Maurice Herlihy | Nir Shavit
The Art of Multiprocessor Programming, Revised Reprint
E-Book
06/2012
Morgan Kaufmann
€56.95
Available for download
Persons
Maurice Herlihy received an A.B. in Mathematics from Harvard University, and a Ph.D. in Computer Science from M.I.T. He has served on the faculty of Carnegie Mellon University, on the staff of DEC Cambridge Research Lab, and is currently a Professor in the Computer Science Department at Brown University. Dr. Herlihy is an ACM Fellow, and is the recipient of the 2003 Dijkstra Prize in Distributed Computing. He shared the 2004 Goedel Prize with Nir Shavit, with whom he also shared the 2012 Edsger W. Dijkstra Prize In Distributed Computing. Nir Shavit received a B.A. and M.Sc. from the Technion and a Ph.D. from the Hebrew University, all in Computer Science. From 1999 to 2011 he served as a member of technical staff at Sun Labs and Oracle Labs. He shared the 2004 Goedel Prize with Maurice Herlihy, with whom he also shared the 2012 Edsger W. Dijkstra Prize in Distributed Computing. He is a Professor in the Electrical Engineering and Computer Science Department at M.I.T. and the Computer Science Department at Tel-Aviv University.
Author
Brown University, Providence, RI, USA
Professor of Computer Science, Massachusetts Institute of Technology, Cambridge, MA, USA
Content
1. Introduction
2. Mutual Exclusion
3. Concurrent Objects and Linearization
4. Foundations of Shared Memory
5. The Relative Power of Synchronization Methods
6. The Universality of Consensus
7. Spin Locks and Contention
8. Monitors and Blocking Synchronization
9. Linked Lists: the Role of Locking
10. Concurrent Queues and the ABA Problem
11. Concurrent Stacks and Elimination
12. Counting, Sorting and Distributed Coordination
13. Concurrent Hashing and Natural Parallelism
14. Skiplists and Balanced Search
15. Priority Queues
16. Futures, Scheduling and Work Distribution
17. Barriers
18. Transactional Memory
Appendices
2. Mutual Exclusion
3. Concurrent Objects and Linearization
4. Foundations of Shared Memory
5. The Relative Power of Synchronization Methods
6. The Universality of Consensus
7. Spin Locks and Contention
8. Monitors and Blocking Synchronization
9. Linked Lists: the Role of Locking
10. Concurrent Queues and the ABA Problem
11. Concurrent Stacks and Elimination
12. Counting, Sorting and Distributed Coordination
13. Concurrent Hashing and Natural Parallelism
14. Skiplists and Balanced Search
15. Priority Queues
16. Futures, Scheduling and Work Distribution
17. Barriers
18. Transactional Memory
Appendices