Multicore Application Programming is a comprehensive, practical guide to high-performance multicore programming that any experienced developer can use.
Author Darryl Gove covers the leading approaches to parallelization on Windows, Linux, and Oracle Solaris. Through practical examples, he illuminates the challenges involved in writing applications that fully utilize multicore processors, helping you produce applications that are functionally correct, offer superior performance, and scale well to eight cores, sixteen cores, and beyond.
The book reveals how specific hardware implementations impact application performance and shows how to avoid common pitfalls. Step by step, you’ll write applications that can handle large numbers of parallel threads, and you’ll master advanced parallelization techniques. You’ll learn how to
- Identify your best opportunities to use parallelism
- Share data safely between multiple threads
- Write applications using POSIX or Windows threads
- Hand-code synchronization and sharing
- Take advantage of automatic parallelization and OpenMP
- Overcome common obstacles to scaling
- Apply new approaches to writing correct, fast, scalable parallel code
Multicore Application Programming isn’t wedded to a single approach or platform: It is for every experienced C programmer working with any contemporary multicore processor in any leading operating system environment.