dask-cuda
Utilities for Dask and CUDA interactions
What it is and what it does
Dask CUDA is a utility library that handles the deployment and lifecycle management of Dask workers on systems with multiple CUDA-enabled GPUs. It provides a LocalCUDACluster abstraction that simplifies spinning up a distributed Dask cluster where each worker is bound to a specific GPU, allowing you to parallelize work across available hardware without manually managing worker-to-GPU assignment.
The library does not automatically convert existing Dask code to run on GPUs—that remains the responsibility of your application code and the libraries you use (such as RAPIDS or CuPy). Instead, it focuses on the infrastructure layer: making it straightforward to create and manage a multi-GPU Dask cluster, handle worker placement, and coordinate resource allocation. It depends on click, numpy, pandas, zict, nvidia-ml-py for GPU monitoring, and rapids-dask-dependency for integration with the RAPIDS ecosystem.
Use it for:
- Set up a multi-GPU Dask cluster on a single machine or cluster for distributed data processing with GPU acceleration.
- Manage worker-to-GPU affinity automatically when scaling Dask workloads across available CUDA devices.
- Integrate GPU-accelerated RAPIDS libraries (cuDF, cuML) with Dask's distributed scheduler for large-scale data science.
- Monitor and coordinate GPU resource allocation across multiple Dask workers in a heterogeneous cluster.
- Prototype and deploy distributed GPU workloads without manually writing worker spawning and GPU binding logic.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Dask CUDA provides utilities for deploying and managing Dask workers on multi-GPU systems, enabling distributed computation across CUDA-enabled hardware.
Yes, if you need to deploy Dask across multiple GPUs. The library is actively maintained, has no known vulnerabilities, and uses a permissive license. Install friction is moderate due to CUDA/driver dependencies, but those are prerequisites for any GPU work anyway. Not suitable if you lack GPU hardware or are looking for automatic GPU code conversion.
Install
dask-cuda on PyPI
pip
pip install dask-cudauv
uv add dask-cudapoetry
poetry add dask-cudaInstalling dask-cuda
Before you install
Medium install friction due to dependencies on cuda-core and nvidia-ml-py, which require CUDA toolkit and NVIDIA drivers to be present on the system. Actively maintained with recent releases; last commit 2026-08-13.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions, making it suitable for most deployment scenarios.
Quickstart
pip install dask-cuda
from dask_cuda import LocalCUDACluster
from dask.distributed import Client
cluster = LocalCUDACluster()
client = Client(cluster)
Requires CUDA-enabled GPU hardware, NVIDIA drivers, and CUDA toolkit installed on the system; Python >= 3.11.
Verify before relying
- Whether the package automatically handles GPU memory management and spilling between GPUs and host memory.
- Performance characteristics and scalability limits for typical multi-GPU cluster sizes.
- Compatibility with specific RAPIDS libraries (e.g., cuDF, cuML) beyond the documented integration points.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 7 — click, cuda-core, numpy, nvidia-ml-py, pandas, rapids-dask-dependency, zict |
| Maintenance | actively maintained — 8 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 302,340/month — #7,824 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dask_cuda-26.8.0-py3-none-manylinux_2_28_aarch64.manylinux_2_28_x86_64.whl
Tags
More Scientific/Engineering packages
NumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
pandaspandas provides fast, flexible data structures…
permissive · top 100 on PyPI
scipyscipy provides numerical algorithms for…
permissive · top 100 on PyPI
scikit-learnscikit-learn provides a comprehensive Python…
permissive · top 1,000 on PyPI
dilldill extends Python's pickle module to…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
dask-cudf-cu12Dask cuDF extends Dask DataFrame with a…
permissive · top 15,000 on PyPI
rapids-dask-dependencyPins compatible versions of dask and…
permissive · top 15,000 on PyPI
raft-dask-cu12Provides multi-node multi-GPU distributed…
permissive · top 15,000 on PyPI
dask-jobqueueDeploys Dask distributed computing clusters on…
permissive · top 15,000 on PyPI
coiledCoiled is a Python client library that…
unclear · top 5,000 on PyPI
nvidia-cublasProvides NVIDIA CUBLAS native runtime libraries…
unclear · top 1,000 on PyPI
nvidia-cuda-ccclProvides NVIDIA CUDA C++ Core Compute Libraries…
unclear · top 5,000 on PyPI
nvidia-cuda-runtimeProvides NVIDIA CUDA Runtime native libraries…
unclear · top 1,000 on PyPI
nvidia-cuda-runtime-cu11Provides CUDA 11 runtime native libraries for…
unclear · top 5,000 on PyPI
libraft-cu12libraft-cu12 provides CUDA-accelerated…
permissive · top 15,000 on PyPI