Enabling callback-driven runtime introspection via MPI_T

Marc André Hermanns, Nathan T. Hjlem, Michael Knobloch, Kathryn Mohror, Martin Schulz

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

4 Scopus citations

Abstract

Understanding the behavior of parallel applications that use the Message Passing Interface (MPI) is critical for optimizing communication performance. Performance tools for MPI currently rely on the PMPI Profiling Interface or the MPI Tools Information Interface, MPI_T, for portably collecting information for performance measurement and analysis. While tools using these interfaces have proven to be extremely valuable for performance tuning, these interfaces only provide synchronous information, i.e., when an MPI or an MPI_T function is called. There is currently no option for collecting information about asynchronous events from within the MPI library. In this work we propose a callback-driven interface for event notification from MPI implementations. Our approach is integrated in the existing MPI_T interface and provides a portable API for tools to discover and register for events of interest. We demonstrate the functionality and usability of the interface with a prototype implementation in Open MPI, a small logging tool (MEL) and the measurement infrastructure Score-P.

Original languageEnglish
Title of host publicationEuroMPI 2018 - Proceedings of the 25th European MPI Users' Group Meeting
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450364928
DOIs
StatePublished - 23 Sep 2018
Event25th European MPI Users' Group Meeting, EuroMPI 2018 - Barcelona, Spain
Duration: 23 Sep 201826 Sep 2018

Publication series

NameACM International Conference Proceeding Series

Conference

Conference25th European MPI Users' Group Meeting, EuroMPI 2018
Country/TerritorySpain
CityBarcelona
Period23/09/1826/09/18

Keywords

  • Callback functions
  • MPI
  • Runtime introspection

Fingerprint

Dive into the research topics of 'Enabling callback-driven runtime introspection via MPI_T'. Together they form a unique fingerprint.

Cite this