• DocumentCode
    3237951
  • Title

    Dynamic Software Testing of MPI Applications with Umpire

  • Author

    Vetter, Jeffrey S. ; De Supinski, Bronis R.

  • Author_Institution
    Lawrence Livermore National Laboratory
  • fYear
    2000
  • fDate
    04-10 Nov. 2000
  • Firstpage
    51
  • Lastpage
    51
  • Abstract
    As evidenced by the popularity of MPI (Message Passing Interface), message passing is an effective programming technique for managing coarse-grained concurrency on distributed computers. Unfortunately, debugging message-passing applications can be difficult. Software complexity, data races, and scheduling dependencies can make programming errors challenging to locate with manual, interactive debugging techniques. This article describes Umpire, a new tool for detecting programming errors at runtime in message passing applications. Umpire monitors the MPI operations of an application by interposing itself between the application and the MPI runtime system using the MPI profiling layer. Umpire then checks the application’s MPI behavior for specific errors. Our initial collection of programming errors includes deadlock detection, mismatched collective operations, and resource exhaustion. We present an evaluation on a variety of applications that demonstrates the effectiveness of this approach.
  • Keywords
    Application software; Computer errors; Computer interfaces; Concurrent computing; Distributed computing; Manuals; Message passing; Processor scheduling; Software debugging; Software testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Supercomputing, ACM/IEEE 2000 Conference
  • ISSN
    1063-9535
  • Print_ISBN
    0-7803-9802-5
  • Type

    conf

  • DOI
    10.1109/SC.2000.10055
  • Filename
    1592764