Description:Only the most inexpensive processors, or processors built for low power consumption, now have single cores. The present and future of CPUs is multi-core, quad cores per CPU, 6 cores soon to come, and probably more after that. The authors have a deep understanding of parallel processing, modern computer architecture, and OpenMP. This understanding is communicated clearly in this excellent book. The only reason to use OpenMP is to make your programs run faster, this motivation permeates the entire book. Extensive discussions regarding performance are included, including extensive discussions of coding to maximize hits on the CPU cache, considerations of overhead in parallel program, how memory placement and thread binding behavior of multiple multi-core CPUs can affect performance, and many other considerations that likely never occured to you. Almost all of the discussions are presented with specific examples and instruction regarding how to code OpenMP directives. The emphasis is on C, with enough examples in Fortran to be able to use that also -- there is no discussion of C++. Since C and Fortran are by far the most important languages used for scientific computation, the language choices are appropriate at least for that community.