-
Notifications
You must be signed in to change notification settings - Fork 9
JJL paper brainstorm
Jonathan Lifflander edited this page Jul 22, 2020
·
11 revisions
- Asynchronous execution of "tasks" mapped dynamically to nodes/ranks
- Built-by-design to be highly interoperable with MPI
- Low-overhead and simple transition between MPI and vt, expected to occur every timestep, both can be active and work together
- Constructs in vt have symmetrical use in MPI (example: vt groups and MPI groups)
- Safe MPI collectives through consensus amidst an asynchronous, dynamic scheduler (novel?)
- Completion and ordering
-
PendingSend
/DependentSendChain
: task graph can expand beyond what is ready-to-run (RT system has lookahead) - Control and data completion are intrinsically bound together through epochs
- Epochs form a graph that groups sets of tasks in the task graph
- Multi-algorithm, lightweight, scalable termination detection of epochs
-
- Collective Design
- Many interfaces in vt have collective interfaces to simplify use for MPI users (also reduces rooted overhead)
-
CollectionChainSet
: drive collections of tasks collectively and asynchronously alongside MPI