WHY:     Enable async progress

WHAT:  Restructure ORTE to operate as a completely event-driven state machine

WHEN:  ~April 1 (seems appropriate)

SIGNIFICANT CHANGES:
    * grpcomm API has changed
    * routed API has changed
    * state framework has been added to ORTE
    * OPAL SOS has been removed (per IU)
    * --enable-resilient-orte and all epoch code has been removed (per UTK)

KNOWN BREAKAGE:
    * checkpoint/restart is almost certainly broken

This has been discussed several times over the last 6-8 months. Going forward, 
we need to enable async progress at both the OMPI and ORTE level. This change 
deals solely with the latter area. All interactions with the ORTE level have 
been made non-blocking to allow the MPI layer to continue making separate 
progress. This is reflected in changes made to ompi_mpi_init, 
ompi_mpi_finalize, and dpm_orte.

The largest change is the introduction of the ORTE "state" framework that moves 
the launch of a job thru a series of events, each processing one step of the 
launch procedure. So allocation becomes an event, as does mapping. The state 
machine is implemented as a linked list, so variations of the procedures can be 
easily implemented by those wanting to try something different from the base 
implementation.

The daemon collectives have also been reworked to remove their "tree" 
dependency. Non-tree collectives can now be performed, and a few are in the 
works and should be committed shortly after the state machine is in the trunk.

The ability to run an ORTE progress thread has been included in the configure 
code (--enable-orte-progress-thread), but is off by default. As Brian noted, 
the MPI layer is not ready for this feature at this time. However, the ORTE 
code is fully prepared, so those interested in working on completing the async 
progress work in the MPI layer can do so.

The state machine branch is at https://bitbucket.org/rhc/ompi-term. I'm still 
doing some cleanup there, so don't be surprised if debug messages appear and/or 
things aren't completely right just yet.




Reply via email to