@inproceedings{389006cb3a204838963e557ad4e13c49,
title = "Efficient Communication/Computation Overlap with MPI+OpenMP Runtimes Collaboration",
abstract = "Overlap network communications and computations is a major requirement to ensure scalability of HPC applications on future exascale machines. To this purpose the de-facto MPI standard provides non-blocking routines for asynchronous communication progress. In various implementations, a dedicated progress thread (PT) is deployed on the host CPU to actually achieve this overlap. However, current PT solutions struggle to find a balance between efficient detection of network events and minimal impact on the application computations. In this paper we propose a solution inspired from the PT approach which benefits from idle time of compute threads to make MPI communication progress in background. We implement our idea in the context of MPI+OpenMP collaboration using the OpenMP Tools interface which will be part of the OpenMP 5.0 standard. Our solution shows an overall performance gain on unbalanced workloads such as the AMG CORAL benchmark.",
keywords = "Distributed computing, Parallel computing, Runtime collaboration, Runtime systems",
author = "Marc Sergent and Mario Dagrada and Patrick Carribault and Julien Jaeger and Marc P{\'e}rache and Guillaume Papaur{\'e}",
note = "Publisher Copyright: {\textcopyright} 2018, Springer International Publishing AG, part of Springer Nature.; 24th International European Conference on Parallel and Distributed Computing, Euro-Par 2018 ; Conference date: 27-08-2018 Through 31-08-2018",
year = "2018",
month = jan,
day = "1",
doi = "10.1007/978-3-319-96983-1\_40",
language = "English",
isbn = "9783319969824",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "560--572",
editor = "Massimo Torquati and Marco Aldinucci and Luca Padovani",
booktitle = "Euro-Par 2018",
}