This document discusses proposals for improving MPI (Message Passing Interface) to allow for more flexible initialization and usage of MPI functionality. The key proposals are:
1. Introduce the concept of an "MPI session" which is a local handle to the MPI library that allows multiple sessions within a process.
2. Query the underlying runtime system to get static "sets" of processes and create MPI groups and communicators from these sets across different sessions.
3. Split MPI functions into two categories - those that initialize/query/destroy objects and those for performance-critical communication/collectives. The former category would initialize MPI transparently.
4. Remove the requirement for MPI_Init() and MPI