Clone or download
yosefe Merge pull request #3031 from yosefe/topic/put-message-rate-optimizat…
…ions

Optimizations for PUT message rate
Latest commit d053374 Nov 9, 2018
Permalink
Failed to load latest commit information.
bindings/java JUCX: pom.xml: junit version as property Feb 6, 2018
config/m4 UCT/IB/MLX5: Revert include verbs.h before mlx5dv.h Nov 8, 2018
contrib test: check that current version is present in spec Nov 7, 2018
debian version: rename MICRO_VERSION to SCM_VERSION Jul 27, 2017
doc Merge pull request #3015 from evgeny-leksikov/ucx_docs Nov 4, 2018
src RMA/BASIC: Fix invalid check whick skipped put_short protocol Nov 9, 2018
test Merge pull request #3016 from evgeny-leksikov/bugfix Nov 8, 2018
.ctags CTAGS: Add default configuration file for ctags. Dec 1, 2016
.gitignore version/rpm: change definition of VERSION Jul 27, 2017
AUTHORS AUTHORS: Dumping contributors from "git shortlog -s" Sep 7, 2018
CONTRIBUTING.md Fix broken link in CONTRIBUTING.md Sep 12, 2018
INSTALL ALL: License clarification Aug 24, 2015
LICENSE UCT/ROCM: Initial implementation. v2 Jul 4, 2017
Makefile.am JUCX: First Java and C (JNI) source files. Dec 18, 2017
NEWS NEWS: Backport from 1.4.x Oct 26, 2018
PULL_REQUEST_TEMPLATE.md GITHUB: Adding PR template Jun 15, 2018
README README: Update perftest example and UCX layers desc May 13, 2018
README.md README: Adding README.md as a soft link Jul 31, 2015
autogen.sh BUILD: Remove jemalloc, since UCM is using ptmalloc. Jan 22, 2016
configure.ac Merge branch 'master' of https://github.com/openucx/ucx into topic/dv-dc Oct 15, 2018
ucx.pc.in BUILD: add packaging Jun 16, 2015
ucx.spec.in spec: add all releases to spec changelog Nov 7, 2018

README.md

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

Compile:

$ ./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.