We decided to go with version 1 of the generalized request proposal.
This means the minimal functionality where you can create requests but
progress is outside MPI. The practical consequence is you need
threads, signals, or polling to use GR.
A new series of calls was voted in for the accessing an MPI datatype.
I realized they were necessary to take care of the new calls with KIND
arguments in Fortran as well as handling the new I/O constructors.
The new calls are more general then the present ones but are designed
to give the same functionality as the old calls in the old cases. We
also decided to remove the ability to decode a datatype in multiple
We removed the section on identifying requests. A main motivation is
gone - telling what type of requests you can cache on. Furthermore,
it does not really tell profilers, etc. all the info they need so they
still have to do extra work. Thus, we decided to remove them.
We added the ability to cache on windows (MPI_WIN). We also made the
key freeing to have a unique function for each type of object you can
The rest of the chapter has modest changes that should not change the
basic meaning from what is currently written.