distributed-ucxx-cu12
UCX communication module for Dask Distributed
What it is and what it does
distributed-ucxx-cu12 is a communication backend plugin for Dask Distributed that replaces the default network layer with UCX (Unified Communication X), a framework optimized for high-performance computing. It enables direct GPU-to-GPU transfers via NVLink and CUDA IPC, plus support for InfiniBand and other specialized interconnects. The package registers itself automatically as the 'ucxx' protocol and can be configured via YAML files, environment variables, or Dask's programmatic configuration API.
This is a specialized tool for distributed GPU computing workloads where network communication is a bottleneck. It requires CUDA 12.x and compatible hardware (GPUs with NVLink or InfiniBand-connected nodes). Configuration options cover transport selection (TCP, NVLink, InfiniBand, CUDA copy), RMM memory pool sizing, and UCX environment tuning. The package is actively maintained and part of the RAPIDS ecosystem.
Use it for:
- Accelerate multi-GPU Dask workloads on a single node using NVLink for direct GPU memory transfers.
- Enable efficient distributed GPU computing across nodes connected via InfiniBand.
- Replace default Dask networking with UCX for latency-sensitive GPU-accelerated analytics.
- Configure RMM memory pools and transport protocols for custom GPU cluster topologies.
- Migrate from legacy distributed.comm.ucx configuration to the new distributed-ucxx namespace.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a high-performance UCX communication backend for Dask Distributed, enabling GPU-to-GPU communication via NVLink, InfiniBand, and other high-speed interconnects.
Yes, if you are running Dask on GPU clusters with NVLink or InfiniBand and need lower-latency communication than the default backend. The package is actively maintained, has no known vulnerabilities, and uses a permissive license. Install friction is moderate due to CUDA 12.x and compiled dependencies, but this is expected for GPU-accelerated computing. Not needed for CPU-only Dask workloads or single-machine development.
Install
distributed-ucxx-cu12 on PyPI
pip
pip install distributed-ucxx-cu12uv
uv add distributed-ucxx-cu12poetry
poetry add distributed-ucxx-cu12Installing distributed-ucxx-cu12
Before you install
Released 1 day ago with active maintenance. Requires CUDA 12.x and depends on ucxx-cu12, rapids-dask-dependency, and pyyaml. Medium install friction due to compiled GPU dependencies and CUDA version specificity.
License in practice
BSD-3-Clause permissive license allows use in commercial and private projects with minimal restrictions.
Quickstart
pip install distributed-ucxx-cu12
from distributed import Client
client = Client("ucxx://scheduler-address:8786")
Requires CUDA 12.x runtime and compatible GPU hardware; ucxx-cu12 is a compiled dependency that must match your CUDA installation.
Verify before relying
- Whether legacy configuration schema (distributed.comm.ucx.*) will actually be removed or maintained long-term.
- Performance benchmarks comparing UCX backend to default Dask communication for typical workloads.
- Compatibility matrix with specific GPU models and InfiniBand hardware versions.
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 3 — pyyaml, rapids-dask-dependency, ucxx-cu12 |
| Maintenance | actively maintained — 1 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 167,448/month — #10,468 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: distributed_ucxx_cu12-0.51.1-py3-none-manylinux_2_28_aarch64.manylinux_2_28_x86_64.whl
Tags
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework…
permissive · top 100 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
cloudpickleCloudpickle extends Python's standard pickle…
permissive · top 1,000 on PyPI
smart-openProvides a unified, open()-compatible Python…
permissive · top 1,000 on PyPI
portalockerPortalocker provides cross-platform file…
permissive · top 1,000 on PyPI
rayRay is a distributed computing framework that…
permissive · top 1,000 on PyPI
libucx-cu12Provides pre-built wheels of the UCX (Unified…
permissive · top 15,000 on PyPI
ucxx-cu12ucxx-cu12 provides Python bindings for the…
permissive · top 15,000 on PyPI
libucxx-cu12Provides Python bindings for UCX (Unified…
permissive · top 15,000 on PyPI
nvidia-nccl-cu13Provides NVIDIA's Collective Communication…
unclear · top 1,000 on PyPI
raft-dask-cu12Provides multi-node multi-GPU distributed…
permissive · top 15,000 on PyPI
nvidia-nccl-cu12Provides NVIDIA's NCCL runtime library for GPU…
unclear · top 1,000 on PyPI
nvidia-nccl-cu11Provides NVIDIA's collective communication…
unclear · top 5,000 on PyPI
mpichProvides a high-performance Message Passing…
unclear · top 15,000 on PyPI
rapids-dask-dependencyPins compatible versions of dask and…
permissive · top 15,000 on PyPI
dask-cudaDask CUDA provides utilities for deploying and…
permissive · top 15,000 on PyPI