Multi-Core Programming Increasing Performance through Software Multithreading
Book Details
Description
Software developers can no longer rely on increasing clock speeds alone to speed up single-threaded applications; instead, to gain a competitive advantage, developers must learn how to properly design their applications to run in a threaded environment. Multi-core architectures have a single processor package that contains two or more processor "execution cores," or computational engines, and deliver - with appropriate software - fully parallel execution of multiple software threads. Intel Hyper-Threading Technology enables additional threads to operate on each core.
Multi-Core Programming: Increasing Performance through Software Multithreading helps software developers write high-performance multi-threaded code for Intel's multi-core architecture while avoiding the common parallel programming issues associated with multi-threaded programs.
Highlights Include:
Elements of parallel programming and multi-threading,
Programming with threading APIs,
OpenMP: The portable solution,
Solutions to common parallel programming problems,
Debugging and testing multi-threaded applications,
Software development tools for multi-threading
This is a practical, hands-on volume with immediately usable code examples that enable readers to quickly master the necessary programming techniques. The companion Web site contains pointers to threading and optimization tools and code samples from the book.
