Combining static and dynamic validation of MPI collective communications

  • Authors:
  • Emmanuelle Saillard;Patrick Carribault;Denis Barthou

  • Affiliations:
  • CEA, DAM, Arpajon, France;CEA, DAM, Arpajon, France;University of Bordeaux, Bordeaux, France

  • Venue:
  • Proceedings of the 20th European MPI Users' Group Meeting
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Collective MPI communications have to be executed in the same order by all processes in their communicator and the same number of times, otherwise a deadlock occurs. As soon as the control-flow involving these collective operations becomes more complex, in particular including conditionals on process ranks, ensuring the correction of such code is error-prone. We propose in this paper a static analysis to detect when such situation occurs, combined with a code transformation that prevents from deadlocking. We show on several benchmarks the small impact on performance and the ease of integration of our techniques in the development process.