The Second-Generation ADI
for the MPICH Implementation
of MPIWilliam Gropp
Ewing Lusknumberdate
In this paper we describe an abstract device interface (ADI) that may be used to efficiently implement the Message Passing Interface (MPI). After experience with a first-generation ADI that made certain assumptions about the devices and tradeoffs in the design, it has become clear that, particularly on systems with low-latency communication, the first-generation ADI design imposes too much additional latency. In addition, the first-generation design is awkward for heterogeneous systems, complex for noncontiguous messaging, and inadequate at error handling. The design in this note describes a new ADI that provides lower latency in common cases and is still easy to implement, while retaining many opportunities for customization to any advanced capabilities that the underlying hardware may support.