openucx/ucx
FreeUnified Communication X (mailing list - https://elist.ornl.gov/mailman/listinfo/ucx-group)
About openucx/ucx
Unified Communication X (UCX) is an award-winning, production-proven communication framework designed for modern high-bandwidth and low-latency networks. It exposes a set of abstract communication primitives that intelligently utilize the best available hardware resources and offloads, including RDMA (InfiniBand and RoCE), TCP, GPUs, shared memory, and network atomic operations. UCX is widely used in high-performance computing (HPC) environments to efficiently orchestrate data transfers across diverse interconnects and accelerators. The project is actively maintained on GitHub with extensive documentation, build instructions, and performance testing tools.
Key Features
Pros & Cons
- Award-winning and production-proven in demanding HPC environments
- Supports a wide range of transports (RDMA, TCP, shared memory, GPUs)
- Actively maintained with a large community (1.7k stars, 578 forks)
- Open source with permissive licensing (BSD-style)
- Comprehensive build and installation documentation
- Includes performance benchmarking utilities
- Known bug in version 1.8.0 causing data corruption when TCP and shared memory transports are used together
- Can hang with glibc versions 2.25-2.29 due to pthread_rwlock bugs
- Requires compilation from source with specific flags for optimal hardware support
- Steeper learning curve for non-HPC users due to low-level primitives