Understand how to run parallel programs with shared memory safely and efficiently.
This book explains how to achieve sequential consistency without overusing locks, by analyzing data dependencies and using minimal delays and locks.
Written for researchers, engineers, and students, it frames core ideas about memory access, atomicity, and the role of delays in preserving correct behavior. The discussion ties theory to practical mechanisms that improve performance on multiprocessor systems while keeping the programmer’s intuitive order of operations intact.
- What sequential consistency means for parallel code and why it matters for correctness
- How memory accesses can be coordinated using delays and locks to avoid unnecessary locking
- How data dependencies and conflict analysis guide the minimal set of constraints
- How to detect and handle mixed cycles to ensure safe, efficient execution
Ideal for readers of systems or programming language design who want a principled approach to building reliable, high-performance parallel software.