This page provides a way to update the community on the current status of various MPI implementation with respect to the various vesions of the MPI Standard.

MPI 4.1

Feature MPICH Open MPI Intel MPI
(P)MPI_WTI{ME,CK} and handle conversion macros are symbols   +
MPI_REQUEST_GET_STATUS makes progress  
Status field get/set functions  
Send with automatic buffering features  
Getting multiple statuses from an array of requests  
MPI_TYPE_GET_VALUE_INDEX  
MPI_COMM_TYPE_RESOURCE_GUIDED and mpi_pset_name  
mpi_assert_strict_persistent_collective_ordering  
Memory alloc kinds  
Getting names for null handles  
MPI_GET_HW_RESOURCE_INFO  
MPI_ERR_ERRHANDLER  
Removing error class, code and string  
MPI_WIN_SHARED_QUERY supports more window types  
mpi_accumulate_granularity  
# - Under development + - Partly done

MPI 4.0

Feature MPICH Open MPI Intel MPI
Large Counts #
Partitioned Communication
Sessions
MPI_T Events
Error Handling
Non-blocking SENDRECV
Persistent Collectives
New Split Types
MPI_COMM_DUP info
Info Assertions
Memory Alignment
MPI_INFO_CREATE_ENV
# - Under development + - Partly done

MPI 3.1

Feature MPICH MVAPICH Open MPI Cray Tianhe Intel MPI IBM (BG/Q - Legacy) IBM (PE - Legacy) IBM (Spectrum) HPE Fujitsu Microsoft MPC NEC Sunway RIKEN AMPI
Non-Blocking Collectives
Neighborhood Collectives
RMA +
Shared Memory #
MPI_T # Q1 2019
MPI_COMM_CREATE_GROUP #
F08 Bindings # Q2 2019
New Datatypes
Large Counts
MPI_MProbe
NBC I/O # # Q2 2019
# - Under development + - Partly done

Instructions for MPI Implementation Maintainers

If you would like to update the information for your implementation. Create a pull request here to make that change. If you’re unclear on how that works, contact @wesbland or @schulzm for help.