Chapter

Recent Advances in Parallel Virtual Machine and Message Passing Interface

Volume 3666 of the series Lecture Notes in Computer Science pp 138-147

Collective Error Detection for MPI Collective Operations

  • Chris FalzoneAffiliated withLancaster UniversityUniversity of Pennsylvania at Edinboro
  • , Anthony ChanAffiliated withCarnegie Mellon UniversityMathematics and Computer Science Division, Argonne National Laboratory
  • , Ewing LuskAffiliated withCarnegie Mellon UniversityMathematics and Computer Science Division, Argonne National Laboratory
  • , William GroppAffiliated withCarnegie Mellon UniversityMathematics and Computer Science Division, Argonne National Laboratory

* Final gross prices may vary according to local VAT.

Get Access

Abstract

An MPI profiling library is a standard mechanism for intercepting MPI calls by applications. Profiling libraries are so named because they are commonly used to gather performance data on MPI programs. Here we present a profiling library whose purpose is to detect user errors in the use of MPI’s collective operations. While some errors can be detected locally (by a single process), other errors involving the consistency of arguments passed to MPI collective functions must be tested for in a collective fashion. While the idea of using such a profiling library does not originate here, we take the idea further than it has been taken before (we detect more errors) and offer an open-source library that can be used with any MPI implementation. We describe the tests carried out, provide some details of the implementation, illustrate the usage of the library, and present performance tests.

Keywords

MPI collective errors datatype hashing