Skip to content
Marc-Andre Hermanns edited this page Jan 14, 2021 · 1 revision

MPI Tools WG Meeting 2020-12-17

Participants

  • Marc-Andre Hermanns
  • Bill Williams
  • Joachim Protze
  • Wesley Bland
  • Martin Schulz

Topics

QMPI_Pcontrol

  • Argonne customer wants an interface to communicate different phases of an applications

    • Caliper (LLNL Tool) should be the solution to that
  • Existing MPI_Pcontrol semantics are terrible to begin with

  • Maybe a key-value store (MPI_Info?, binary values?) could solve this

    • Binary keys and values could be a valuable
    • MPI_Info_key_create("name", &index) to create an integer ID for a string key?
  • QMPI_Pcontrol could also be used for user instrumentation

    • Extraction of information from "info" objects needs to be fast (for small code regions)
      • Using hashes would only solve part of the problem
    • Add setter/getter with void* and
    • Could this be done via CVARs?
      • Some API needed to query the specific object a CVAR is bound to
      • One might bind a CVAR to an Info object
        • Requires multiple Info objects to identify as different instrumentation points.
        • Distinct CVARs might be needed to indicate begin/end
  • Would a new handle type MPI_Tool coming from QMPI registration work better to convey information

  • Non-blocking version?

    • How to make sure completion can be handled by the library?
      • Something along the lines of the MPI_Pready call to indicate that a tool that intercepts Qcontrol is done manipulating the info object
  • Should a tool be required to pass on to next layer?

    • Is this info for me?
      • Exclusively?
Clone this wiki locally