TY - GEN
T1 - Auto-tuning Non-blocking Collective Communication Operations
AU - Barigou, Youcef
AU - Venkatesan, Vishwanath
AU - Gabriel, Edgar
N1 - KAUST Repository Item: Exported on 2020-10-01
Acknowledgements: Partial support for this work was pro-vided by the National Science Foundation’s Computer Sys-tems Research program under Award No. CNS-0846002 andCRI-0958464. Any opinions, findings, and conclusions orrecommendations expressed in this material are those of theauthors and do not necessarily reflect the views of the NationalScience Foundation. We would like to thank the KAUSTSupercomputing Laboratory for giving us access to their IBMBlueGene/P.
This publication acknowledges KAUST support, but has no KAUST affiliated authors.
PY - 2015/5
Y1 - 2015/5
N2 - Collective operations are widely used in large scale scientific applications, and critical to the scalability of these applications for large process counts. It has also been demonstrated that collective operations have to be carefully tuned for a given platform and application scenario to maximize their performance. Non-blocking collective operations extend the concept of collective operations by offering the additional benefit of being able to overlap communication and computation. This paper presents the automatic run-time tuning of non-blocking collective communication operations, which allows the communication library to choose the best performing implementation for a non-blocking collective operation on a case by case basis. The paper demonstrates that libraries using a single algorithm or implementation for a non-blocking collective operation will inevitably lead to suboptimal performance in many scenarios, and thus validate the necessity for run-time tuning of these operations. The benefits of the approach are further demonstrated for an application kernel using a multi-dimensional Fast Fourier Transform. The results obtained for the application scenario indicate a performance improvement of up to 40% compared to the current state of the art.
AB - Collective operations are widely used in large scale scientific applications, and critical to the scalability of these applications for large process counts. It has also been demonstrated that collective operations have to be carefully tuned for a given platform and application scenario to maximize their performance. Non-blocking collective operations extend the concept of collective operations by offering the additional benefit of being able to overlap communication and computation. This paper presents the automatic run-time tuning of non-blocking collective communication operations, which allows the communication library to choose the best performing implementation for a non-blocking collective operation on a case by case basis. The paper demonstrates that libraries using a single algorithm or implementation for a non-blocking collective operation will inevitably lead to suboptimal performance in many scenarios, and thus validate the necessity for run-time tuning of these operations. The benefits of the approach are further demonstrated for an application kernel using a multi-dimensional Fast Fourier Transform. The results obtained for the application scenario indicate a performance improvement of up to 40% compared to the current state of the art.
UR - http://hdl.handle.net/10754/597636
UR - http://ieeexplore.ieee.org/document/7284450/
UR - http://www.scopus.com/inward/record.url?scp=84962257840&partnerID=8YFLogxK
U2 - 10.1109/IPDPSW.2015.15
DO - 10.1109/IPDPSW.2015.15
M3 - Conference contribution
SN - 9781467376846
SP - 1204
EP - 1213
BT - 2015 IEEE International Parallel and Distributed Processing Symposium Workshop
PB - Institute of Electrical and Electronics Engineers (IEEE)
ER -