Brussels / 3 & 4 February 2024


Overcoming MPI ABI incompatibility

Scientific applications rely on third-party libraries, which may have multiple implementations with many of these implementations not sharing the application binary interface (ABI) and require recompiling depending on the target system. Recompiling can be a long and complex process, (1) impeding application execution across different HPC and Cloud systems; (2) adding developer hours rebuilding an application; and (3) not taking advantage of host-optimized libraries.

The Wi4MPI library, developed at CEA, addresses this ABI incompatibility in MPI. Wi4MPI translates the ABI dynamically from the MPI library used to build the application to a different MPI library available at run time. With Wi4MPI, HPC practitioners can break the portability barrier imposed by ABI incompatibility, potentially increase performance, and increase user productivity. This presentation is broken down in three components: (1) Understanding ABI compatibility in MPI; (2) Translating MPI libraries dynamically; and (3) Applying dynamic translation to key use cases in HPC, including Containers.


Photo of Marc Joos Marc Joos