The MIT Press publication "Using OpenMP: Portable Shared Memory Parallel Programming" by Barbara Chapman, Gabriele Jost and Ruud van der Pas is "the first really comprehensive book on parallel programming using the OpenMP API," writes Richard Friedman on the Solaris Developer blog.
"...I can say that it packs a lot of very useful information in one place," Friedman writes. "Most useful is a discussion of how cache lines can interfere with OpenMP parallelization and cause performance and scaling degradation if you are not aware of what's going on."
The book covers:
- Individual features of the portable programming interface for shared memory parallel computers
- Hardware developments, describing where OpenMP is applicable
- How OpenMP compares to other programming interfaces for shared and distributed memory parallel architectures
- The use and functionality of the language constructs through source code examples
- How to write an efficient OpenMP program
- How to use OpenMP in full-scale applications to achieve high performance on large-scale architectures though the use of several case studies
- How OpenMP is translated into explicitly multithreaded code
- In-depth troubleshooting advice
- Trends the authors believe are likely to influence OpenMP development
The publisher notes, "'Using OpenMP' provides an essential reference not only for students at both undergraduate and graduate levels but also for professionals who intend to parallelize existing codes or develop new parallel programs for shared memory computer architectures."Friedman also has posted an invite for public comment on the OpenMP 3.0 specification, which is the first update since 2005. Find out more about the new features, where to access the draft specification, etc. from the Solaris Developer blog.