TY - GEN
T1 - Leveraging MPI's one-sided communication interface for shared-memory programming
AU - Hoefler, Torsten
AU - Dinan, James
AU - Buntinas, Darius
AU - Balaji, Pavan
AU - Barrett, Brian W.
AU - Brightwell, Ron
AU - Gropp, William
AU - Kale, Vivek
AU - Thakur, Rajeev
PY - 2012
Y1 - 2012
N2 - Hybrid parallel programming with MPI for internode communication in conjunction with a shared-memory 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 MPI-integrated shared-memory programming model that is incorporated into MPI through a small extension to the one-sided communication interface. We discuss the integration of this interface with the upcoming MPI 3.0 one-sided 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 five-point stencil solver.
AB - Hybrid parallel programming with MPI for internode communication in conjunction with a shared-memory 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 MPI-integrated shared-memory programming model that is incorporated into MPI through a small extension to the one-sided communication interface. We discuss the integration of this interface with the upcoming MPI 3.0 one-sided 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 five-point stencil solver.
UR - http://www.scopus.com/inward/record.url?scp=84867646537&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84867646537&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-33518-1_18
DO - 10.1007/978-3-642-33518-1_18
M3 - Conference contribution
AN - SCOPUS:84867646537
SN - 9783642335174
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 132
EP - 141
BT - Recent Advances in the Message Passing Interface - 19th European MPI Users' Group Meeting, EuroMPI 2012, Proceedings
T2 - 19th European MPI Users' Group Meeting on Recent Advances in the Message Passing Interface, EuroMPI 2012
Y2 - 23 September 2012 through 26 September 2012
ER -