Skip to content
Kathryn Mohror edited this page Dec 7, 2016 · 1 revision
  • What do we want in MPIR2?

  • Want to support multiple DLLs

    • Debuggers are not compiled/linked against multiple MPIs so need to load appropriate library dynamically
  • Want an API based mechanism not variable based

  • Want to support dynamic processes, not static process table

    • Scalable process table
    • Lazy loading of process table?
  • Defined point for detach (finalize)

  • MPI thread based - want to support that

  • Mpiexec mechanism, co launch MPI applicationswith debugger tools

    • Came with newer machines,
    • 6.1 in MPIR job launch
    • Still need to talk to the starter process
  • Debugger needs indication that MPI is ready, all processes are started

    • Now it is MPIR_Breakpoint
    • What about a debugger sets a callback,
    • Or an MPI request that you can wait for (That is the MPI way :-) )
  • Define the interface such that you don't have to be a debugger. e.g. spindle

  • Multiple tools attach at a time

    • How can we do the dll thing without ptrace attach on starter process
  • How do we get around the dll problem?

    • That requires access to the process memory space
    • What about making the interface to MPIR an ABI
    • All of MPIR is already an ABI so it's not breaking from tradition
    • Would only be in the starter process?
    • Well the rest of it is ABI (MSQ) too so …
  • Process table

    • Need a notification of whenever it is ready (the process table)
    • And when it has changed due to dynamic processes
  • OMPD use as a baseline

  • Message queue interface, overly specific on what is returned for routines

    • Jim Dinan said there was a problem, prescribes a queue implementation
    • Slows up OpenMPI need to not dictate implementation
    • We should remember this when redesigning MQS
  • Sessions proposal how it interacts

    • Multiple comm worlds? Does it care?
    • How can a debugger ask about a subset?
    • Does the resource manager know about all sessions ?
      • In openMPI apparently so, but maybe not all MPI implemetnations
    • Need a way to query for information, how processes are being logically grouped
Clone this wiki locally