Static/dynamic validation of MPI collective communications in multi-threaded context

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Scientific applications mainly rely on the MPI parallel programming model to reach high performance on supercomputers. The advent of manycore architectures (larger number of cores and lower amount of memory per core) leads to mix MPI with a thread-based model like OpenMP. But integrating two different programming models inside the same application can be tricky and generate complex bugs. Thus, the correctness of hybrid programs requires a special care regarding MPI calls location. For example, identical MPI collective operations cannot be performed by multiple non-synchronized threads. To tackle this issue, this paper proposes a static analysis and a reduced dynamic instrumentation to detect bugs related to misuse of MPI collective operations inside or outside threaded regions. This work extends PARCOACH designed for MPI-only applications and keeps the compatibility with these algorithms. We validated our method on multiple hybrid benchmarks and applications with a low overhead.

Original languageEnglish
Title of host publication20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2015 - Proceedings
PublisherAssociation for Computing Machinery
Pages279-280
Number of pages2
ISBN (Electronic)9781450332057
DOIs
Publication statusPublished - 24 Jan 2015
Externally publishedYes
Event20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2015 - San Francisco, United States
Duration: 7 Feb 201511 Feb 2015

Publication series

NameProceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP
Volume2015-January
ISSN (Print)1542-0205

Conference

Conference20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2015
Country/TerritoryUnited States
CitySan Francisco
Period7/02/1511/02/15

Keywords

  • Control flow
  • MPI+OpenMP
  • Static
  • Verification

Fingerprint

Dive into the research topics of 'Static/dynamic validation of MPI collective communications in multi-threaded context'. Together they form a unique fingerprint.

Cite this