ComEx: Communications Runtime for Extreme Scale
The Communication runtime for Extreme Scale (ComEx) is a successor of the Aggregate Remote Memory Copy Interface (ARMCI). ComEx uses native interfaces for facilitating one-sided communication primitives in Global Arrays. As an example, ComEx has been designed to use Openfabrics Verbs (OFA) for InfiniBand and RoCE Interconnects, Distributed Memory Applications (DMAPP) for Cray Gemini Interconnect, and PAMI for x86, PERCS, and Blue Gene/Q Interconnects. The specification is being extended to support multi-threading, group aware communication, non-cache-coherent architectures and generic active messages. ComEx provides abstractions for RMA operations such as get, put and atomic memory operations and provides location consistency.
The latest version of ComEx is bundled with the Global Arrays software as of GA 5.4b. Future versions of ComEx will be available stand-alone. Please see the GA download page to download ComEx as part of GA 5.4b.