TY - JOUR
T1 - Test suite for evaluating performance of multithreaded MPI communication
AU - Thakur, Rajeev
AU - Gropp, William
N1 - Funding Information:
We thank the RWTH Aachen University and the San Diego Supercomputer Center for providing computing time on their systems. This work was supported by the Office of Advanced Scientific Computing Research, Office of Science, US Department of Energy, under Contract DE-AC02-06CH11357.
PY - 2009/12
Y1 - 2009/12
N2 - As parallel systems are commonly being built out of increasingly large multicore chips, application programmers are exploring the use of hybrid programming models combining MPI across nodes and multithreading within a node. Many MPI implementations, however, are just starting to support multithreaded MPI communication, often focussing on correctness first and performance later. As a result, both users and implementers need some measure for evaluating the multithreaded performance of an MPI implementation. In this paper, we propose a number of performance tests that are motivated by typical application scenarios. These tests cover the overhead of providing the MPI_THREAD_MULTIPLE level of thread safety for user programs, the amount of concurrency in different threads making MPI calls, the ability to overlap communication with computation, and other features. We present performance results with this test suite on several platforms (Linux cluster, Sun and IBM SMPs) and MPI implementations (MPICH2, Open MPI, IBM, and Sun).
AB - As parallel systems are commonly being built out of increasingly large multicore chips, application programmers are exploring the use of hybrid programming models combining MPI across nodes and multithreading within a node. Many MPI implementations, however, are just starting to support multithreaded MPI communication, often focussing on correctness first and performance later. As a result, both users and implementers need some measure for evaluating the multithreaded performance of an MPI implementation. In this paper, we propose a number of performance tests that are motivated by typical application scenarios. These tests cover the overhead of providing the MPI_THREAD_MULTIPLE level of thread safety for user programs, the amount of concurrency in different threads making MPI calls, the ability to overlap communication with computation, and other features. We present performance results with this test suite on several platforms (Linux cluster, Sun and IBM SMPs) and MPI implementations (MPICH2, Open MPI, IBM, and Sun).
KW - Benchmarks
KW - Message passing interface (MPI)
KW - Multithreading
KW - Performance measurement
UR - http://www.scopus.com/inward/record.url?scp=71549163177&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=71549163177&partnerID=8YFLogxK
U2 - 10.1016/j.parco.2008.12.013
DO - 10.1016/j.parco.2008.12.013
M3 - Article
AN - SCOPUS:71549163177
SN - 0167-8191
VL - 35
SP - 608
EP - 617
JO - Parallel Computing
JF - Parallel Computing
IS - 12
ER -