2025

The Art of Multiprocessor Programming 2nd Edition Book Club

Part of the Software Internals Email Book Club.

The next book we'll read is The Art of Multiprocessor Programming 2nd Edition (ISBN 9780124159501) from 2020 by Herlihy, Shavit, Luchangco, and Spear. A free PDF comes up for me on a Google search of this book but it is of the 1st Edition from 2008. Make sure you grab the 2nd Edition from 2020.

Date Discussion starter Chapter Title
August 16thPhil1Introduction
August 23rdTBD2Mutual exclusion
August 30thTBD3Concurrent objects
September 6thTBD4Foundations of shared memory
September 13thTBD5The relative power of primitive synchronization operations
September 20thTBD6Universality of consensus
September 27thTBD7Spin locks and contention
October 4thTBD8Monitors and blocking synchronization
October 11thTBD9Linked lists: The role of locking
October 18thTBD10Queues, memory management, and the ABA problem
October 25thTBD11Stacks and elimination
November 1stTBD12Counting, sorting, and distributed coordination
November 8thTBD13Concurrent hashing and natural parallelism
November 15thTBD14Skiplists and balanced search
November 22thTBD15Priority queues
November 29thTBD16Scheduling and work distribution
December 6thTBD17Data parallelism
December 13thTBD18Barriers

All discussion is via a Google Group. You probably need a Google account. Your email will be public if you post but otherwise it will not be visible to anyone.

There will be no Zoom or Google Hangout, it will purely be over text email.

You should read the chapter before the date it is listed.

Discussion starter

Each weekend, one person will send out an email to start discussion. It can be as short as a paragraph or two just to get discussion going. Anyone else can chime in afterward.

It's most fun if this discussion starter doesn't summarize the chapter but tells a bit about themselves, their background, and what resonated or was confusing in the chapter, or how it tied back to something they experienced in the real-world.

Sign up

Fill out this form.