The emergence of multicore processors and the rapid increase of on-node parallelism have brought the topic of programming models for high-performance computing to the forefront. And the situation has been made more pressing as we approach the exascale era. Can the current Message-Passing Interface (MPI) model meet the needs of next-generation architectures? Or will entirely new programming models be necessary?
Numerous models, including both evolutionary and revolutionary, have been proposed to answer these questions. Many of the most prominent models are presented in a new book titled Programming Models for Parallel Computing, edited by Pavan Balaji.
Beginning with the popular MPI parallel programming model, the book discusses one-sided communication models, task-oriented programming models, and models for use on multicore architectures or accelerators. Throughout, the approach is tutorial.
“Our intention is for readers, whether graduate students or researchers, to understand the benefits and limitations of each model,” said Pavan Balaji, editor of the new book and a computer scientist in the Mathematics and Computer Science Division at Argonne National Laboratory.
Programming Models for Parallel Computing is available from MIT Press in paperback or ebook form. Instructor resources are also available.