MPI 2.2’s Scalable Process Topologies

Torsten Hoefler has written a guest post at the Cisco blog on MPI 2.2’s Scalable Process Topologies. Hoefler, the Performance Modeling and Simulation lead of the Blue Waters project at NCSA, says that process topologies are beautiful portable abstractions to achieve optimized topology mapping in MPI-2.2 and that optimized communication for arbitrary communication patterns are coming in MPI-3:

MPI-3 is on it’s way and a new proposal exists to extend the process topologies with communication capabilities. The proposal introduces new “collective” operations that act on the process topologies. This means that each process communicates with his local neighbors. Such a pattern is very typical for halo exchanges in many codes. The collective and declarative specification allows the MPI implementation to compute optimized messaging schedules and relay messages through other processes just like it does for collective operations since MPI-1. Initial experimental results and a detailed description of the envisioned functionality can be found in “Sparse Collective Operations for MPI“.

Read the Full Story.