IDEAS home Printed from https://ideas.repec.org/h/spr/sprchp/978-3-642-37349-7_4.html
   My bibliography  Save this book chapter

Advanced Memory Checking for MPI Parallel Applications Using MemPin

In: Tools for High Performance Computing 2012

Author

Listed:
  • Shiqing Fan

    (University of Stuttgart, High Performance Computing Center Stuttgart (HLRS))

  • Rainer Keller

    (Hochschule für Technik Stuttgart)

  • Michael Resch

    (University of Stuttgart, High Performance Computing Center Stuttgart (HLRS))

Abstract

In this paper, we describe the implementation of memory checking functionality that is based on instrumentation tools. The combination of instrumentation based checking functions and the MPI-implementation offers superior debugging functionalities, for errors that otherwise are not possible to detect with comparable MPI-debugging tools. Our implementation contains three parts: first, a memory callback extension that is implemented on top of the ValgrindMemcheck tool for advanced memory checking in parallel applications; second, a new instrumentation tool was developed based on the Intel Pin framework, which provides similar functionality as Memcheck. It can be used in Windows environments that have no access to the Valgrind suite; third, all the checking functionalities are integrated as the so-called memchecker framework within Open MPI. This will also allow other memory debuggers that offer a similar API to be integrated. The tight control of the user’s memory passed to Open MPI, allows us to detect application errors and to track bugs within Open MPI itself. The extension of the callback mechanism targets communication buffer checks in both pre- and post-communication phases, in order to analyze the usage of the received data, e.g. whether the received data has been overwritten before it is used in an computation or whether the data is never used. We describe our actual checks, how memory buffers are being handled internally, show errors actually found in user’s code, and the performance improvement of our instrumentation.

Suggested Citation

  • Shiqing Fan & Rainer Keller & Michael Resch, 2013. "Advanced Memory Checking for MPI Parallel Applications Using MemPin," Springer Books, in: Alexey Cheptsov & Steffen Brinkmann & José Gracia & Michael M. Resch & Wolfgang E. Nagel (ed.), Tools for High Performance Computing 2012, edition 127, pages 39-53, Springer.
  • Handle: RePEc:spr:sprchp:978-3-642-37349-7_4
    DOI: 10.1007/978-3-642-37349-7_4
    as

    Download full text from publisher

    To our knowledge, this item is not available for download. To find whether it is available, there are three options:
    1. Check below whether another version of this item is available online.
    2. Check on the provider's web page whether it is in fact available.
    3. Perform a
    for a similarly titled item that would be available.

    More about this item

    Keywords

    ;
    ;
    ;
    ;
    ;

    Statistics

    Access and download statistics

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:spr:sprchp:978-3-642-37349-7_4. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Sonal Shukla or Springer Nature Abstracting and Indexing (email available below). General contact details of provider: http://www.springer.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.