TY - GEN
T1 - An Emulation Layer for Dynamic Resources with MPI Sessions
AU - Fecht, Jan
AU - Schreiber, Martin
AU - Schulz, Martin
AU - Pritchard, Howard
AU - Holmes, Daniel J.
N1 - Publisher Copyright:
© 2022, Springer Nature Switzerland AG.
PY - 2022
Y1 - 2022
N2 - The current static job scheduling on supercomputers for MPI-based applications is well known to be a limiting factor for the exploitation of a system’s top performance in terms of application throughput. Hence, allowing fully flexible and dynamically varying job sizes would provide multiple advantages compared to the current approach, e.g., by prioritizing jobs dynamically and optimizing resource usage by transferring resources economically. A critical step in achieving dynamic resource management with MPI on supercomputers is the development of sound and robust interfaces between MPI applications and the runtime system. Our approach extends the concept of MPI Sessions, a new concept introduced with MPI 4.0, by adding new features to support varying computing resources via the MPI process set abstraction. We then show how these features can be used, as a proof of concept, to request (active) and cope with (passive) varying resources from an application’s perspective. To validate of our approach, we develop libmpidynres, a C library providing an emulated MPI Sessions environment on top of existing MPI implementations without MPI Sessions support, which we then use to integrate our proposed extensions to the interface specification. Using this proof-of-concept environment, we show how an MPI Sessions enabled application can use process sets to handle dynamically varying resources.
AB - The current static job scheduling on supercomputers for MPI-based applications is well known to be a limiting factor for the exploitation of a system’s top performance in terms of application throughput. Hence, allowing fully flexible and dynamically varying job sizes would provide multiple advantages compared to the current approach, e.g., by prioritizing jobs dynamically and optimizing resource usage by transferring resources economically. A critical step in achieving dynamic resource management with MPI on supercomputers is the development of sound and robust interfaces between MPI applications and the runtime system. Our approach extends the concept of MPI Sessions, a new concept introduced with MPI 4.0, by adding new features to support varying computing resources via the MPI process set abstraction. We then show how these features can be used, as a proof of concept, to request (active) and cope with (passive) varying resources from an application’s perspective. To validate of our approach, we develop libmpidynres, a C library providing an emulated MPI Sessions environment on top of existing MPI implementations without MPI Sessions support, which we then use to integrate our proposed extensions to the interface specification. Using this proof-of-concept environment, we show how an MPI Sessions enabled application can use process sets to handle dynamically varying resources.
KW - Dynamic resources
KW - MPI
KW - MPI Sessions
KW - Resource management
UR - http://www.scopus.com/inward/record.url?scp=85148683979&partnerID=8YFLogxK
U2 - 10.1007/978-3-031-23220-6_10
DO - 10.1007/978-3-031-23220-6_10
M3 - Conference contribution
AN - SCOPUS:85148683979
SN - 9783031232190
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 147
EP - 161
BT - High Performance Computing. ISC High Performance 2022 International Workshops - Revised Selected Papers
A2 - Anzt, Hartwig
A2 - Bienz, Amanda
A2 - Luszczek, Piotr
A2 - Baboulin, Marc
PB - Springer Science and Business Media Deutschland GmbH
T2 - 37th International Conference on High Performance Computing , ISC High Performance 2022
Y2 - 29 May 2022 through 2 June 2022
ER -