Authors: Torsten Hoefler James Dinan Darius Buntinas Pavan Balaji Brian Barrett Ron Brightwell William Gropp Vivek Kale Rajeev Thakur
Publish Date: 2013/05/19
Volume: 95, Issue: 12, Pages: 1121-1136
Abstract
Hybrid parallel programming with the message passing interface MPI for internode communication in conjunction with a sharedmemory programming model to manage intranode parallelism has become a dominant approach to scalable parallel programming While this model provides a great deal of flexibility and performance potential it saddles programmers with the complexity of utilizing two parallel programming systems in the same application We introduce an MPIintegrated sharedmemory programming model that is incorporated into MPI through a small extension to the onesided communication interface We discuss the integration of this interface with the MPI 30 onesided semantics and describe solutions for providing portable and efficient data sharing atomic operations and memory consistency We describe an implementation of the new interface in the MPICH2 and Open MPI implementations and demonstrate an average performance improvement of 40 to the communication component of a fivepoint stencil solverWe thank the members of the MPI Forum and the MPI community for their efforts in creating the MPI 30 specification In addition we thank Jeff RḢammond for reviewing a draft of this article This work was supported by the US Department of Energy Office of Science Advanced Scientific Computing Research under Contract DEAC0206CH11357 under award number DEFC0210ER26011 with program manager Sonia Sachs under award number DEFG0208ER25835 and as part of the Extremescale Algorithms and Software Institute EASI by the Department of Energy Office of Science US DOE award DESC0004131 Sandia is a multiprogram laboratory operated by Sandia Corporation a Lockheed Martin Company for the United States Department of Energys National Nuclear Security Administration under contract DEAC94AL85000
Keywords: