C C++ M4 Shell Makefile Java Other
Clone or download
yosefe Merge pull request #2740 from brminich/topic/uct_dci_alloc_fix
UCT/DC: Fix DCI pending allocation scheme
Latest commit 8b78dd5 Jul 20, 2018


UCX is a communication library implementing a high-performance messaging layer for MPI, PGAS, and RPC frameworks.

Running internal unit tests

$ ./autogen.sh
$ ./contrib/configure-devel
$ make
$ make -C test/gtest test

Running UCX hello-world


$ ./autogen.sh  
$ ./contrib/configure-release --prefix=$PWD/install
$ make

Start server:

$ ./src/tools/perf/ucx_perftest -c 0

Connect client:

$ ./src/tools/perf/ucx_perftest <server-hostname> -t tag_lat -c 0

UCX high-level layout

  • UCX - Unified Communication X
  • UCP - UCX Protocol. Implements high-level abstractions such as tag-matching, streams, connection negotiation and establishment, multi-rail, and handling different memory types.
  • UCT - UCX Transport. Implements low-level communication primitives such as active messages, remote memory access, and atomic operations.
  • UCS - UCX Services. A collection of data structures, algorithms, and system utilities for common use.
  • UCM - UCX Memory. Intercepts memory allocation and release events, used by memory registration cache.