InfiniBand is a switched fabric interconnect. The InfiniBand specification does not define an API. However the OFED package, libibverbs, has become the default API on Linux and Solaris systems. Sparse documentation exists for the verbs API. The simplest InfiniBand program provided by OFED, ibv rc pingpong, is about 800 lines long. The semantics of using the verbs API for this program is not obvious to the first time reader. This paper will dissect the ibv rc pingpong program in an attempt to make clear to users how to interact with verbs. This work was motivated by an ongoing project to include direct InfiniBand support for the DMTCP checkpointing package [1] .
Actually, this was what motivated G. Kerr to dissect in REF a simple pingpong program, in an attempt to make clear how to interact with the InfiniBand Verbs API.
Dissecting a Small InfiniBand Application Using the Verbs API
ArXiv
ArXiv
Computer Science