Träff, J. L., Vardas, I., & Hunold, S. (2024). Modes, Persistence and Orthogonality: Blowing MPI Up. In SC24-W: Workshops of the International Conference for High Performance Computing, Networking, Storage and Analysis (pp. 404–413). IEEE. https://doi.org/10.1109/SCW63240.2024.00061
SC24-W: ExaMPI: Workshop on Exascale MPI (Part of: International Conference for High Performance Computing, Networking, Storage and Analysis (SC24))
en
Event date:
17-Nov-2024 - 22-Nov-2023
-
Event place:
Atlanta, United States of America (the)
-
Number of Pages:
10
-
Publisher:
IEEE
-
Peer reviewed:
Yes
-
Keywords:
MPI; collective communication; persistent communication; HPC; standard reduction
en
Abstract:
The Message-Passing Interface (MPI) specification provides a restricted form of persistence in point-to-point and collective communication operations that purportedly enables libraries to amortize precomputation and setup costs over longer sequences of identical communication operations. Because of the way that MPI has chosen to represent semantics and modes of communication, further additions and modifications to the MPI specification often came and come at the cost of a (combinatorial) blow-up in the number of interface functions. For instance, four immediate send operations and one receive operation are duplicated in persistent versions, as are 17 dense and 5 sparse collective communication operations. Other MPI functionality leads to similar, linear blow-up which is a conceptual burden on users and a real strain for MPI library implementers. We discuss how to exploit orthogonality and separation of concerns more thoroughly to prevent the proliferation of concrete interface functions while still providing essentially the same (and much more) persistence as current MPI and without any additional burden on library implementers. Concretely, our proposal reduces the number of point-to-point, dense, and sparse collective communication interfaces from 15 + 51 + 15 = 81 to 4 + 34 + 0 = 38, while getting additional semantic variations of the indispensable MPI-Sendrecv operation for free. We introduce new variants of persistence which we call pairwise and relaxed persistence that could very well be performance relevant. We reiterate on related problems with missing functionality in the huge MPI standard. Our concrete proposals contribute to the discussion about why MPI is so huge and what could or should be done about that.
en
Project title:
Algorithm Engineering für Prozess Mapping: P31763-N31 (FWF - Österr. Wissenschaftsfonds) Offline- und Online-Autotuning von Parallelen Programmen: P 33884-N (FWF - Österr. Wissenschaftsfonds)
-
Research Areas:
Computer Engineering and Software-Intensive Systems: 50% Computer Science Foundations: 50%