Combining Static and Dynamic Validation of MPI Collective Communication
Résumé
Collective MPI communications have to be executed in the same order by all processes in their ommunicator and the same number of times, otherwise a deadlock occurs. As soon as the controlflow 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 eadlocking. We show on several benchmarks the small impact on performance and the ease of integration of our techniques in the development process.
Origine : Fichiers produits par l'(les) auteur(s)
Loading...