Dask
by Dask developers (open-source community) · Library · also known as dask.distributed
Python library for parallel and distributed computing that scales pandas, NumPy and custom task graphs from a laptop to a cluster
Overview
Dask is an open-source Python library (BSD-3-Clause) for parallel computing that grew out of the PyData ecosystem. It offers parallel versions of familiar collections: Dask DataFrame partitions a pandas DataFrame across many pandas objects, Dask Array does the same for NumPy, Dask Bag handles unstructured records, and Delayed and Futures let arbitrary Python functions be composed into task graphs. A scheduler executes those graphs with threads or processes on one machine, or across a cluster through the distributed scheduler.
Deployment options cover a local cluster in a Python session, HPC job queues such as Slurm, PBS and LSF via Dask-Jobqueue, Kubernetes via the Dask operator, and commercial cloud hosting through Coiled. Xarray, the labeled-array library widely used in climate and geoscience, is a major consumer of Dask arrays.
Dask suits analysts who already use pandas and NumPy and need larger-than-memory or multi-node execution with minimal code changes. Limits: DataFrame operations that need shuffles can be slow, not every pandas API is implemented, and debugging distributed task graphs takes practice.
Capabilities
- Parallel DataFrame and Array collections mirroring pandas and NumPy
- Delayed and Futures for custom task graphs
- Single-machine and distributed schedulers
- Deployment on HPC job queues, Kubernetes and cloud
- Diagnostic dashboard for tasks and memory
Typical workflows
- Process a Parquet dataset larger than RAM with pandas syntax
- Fan a loop of simulations across a cluster with Delayed
- Run Dask workers inside a Slurm allocation
Strengths
- Familiar APIs for pandas and NumPy users
- Scales from one laptop to many nodes
- Permissive license and mature ecosystem
Limitations
- Shuffle-heavy operations can be slow
- Partial coverage of the pandas API
- Distributed debugging is non-trivial
Prerequisites
- Python 3.10 or newer
Who it is for
- Data scientists outgrowing pandas
- Scientific computing groups on HPC clusters
Alternatives & comparison
- Apache Spark
Distributed data processing engine with DataFrame and SQL APIs in Python, Scala, Java and R, plus structured streaming and MLlib
Open sourceOpen source - GNU Parallel
Shell tool that runs commands in parallel over input lines on one or several machines, as a drop-in alternative to xargs and shell loops
Open sourceOpen source - Open MPI
Open-source implementation of the MPI message-passing standard used to run tightly coupled parallel programs across the nodes of a cluster
Open sourceOpen source - pandas
The standard Python DataFrame library for labeled tabular data, time series and I/O to CSV, Excel, SQL, Parquet and more
Open sourceOpen source - Polars
Rust-based DataFrame library with Python, Rust, Node and R bindings offering lazy query optimization, multithreading and Arrow-native memory
Open sourceOpen source - Ray
Open-source Python framework for distributing tasks, actors and ML workloads across a cluster, with libraries for data processing, training, tuning, serving and reinforcement learning
Open sourceOpen source
Sources & verification
Primary sources consulted for this record. Claims are tied to the fields each source supports; the automated link checker re-verifies every URL on a schedule.
- Licensehttps://github.com/dask/dask/blob/main/LICENSE.txtchecked Nov 1, 2026
Supports: license_spdx, source_model
- Official documentationchecked Nov 1, 2026
- Official sitechecked Nov 1, 2026
- Confidence
- High
- Reviewed
- Nov 1, 2026
- Links
- Verified · Nov 2, 2026
Spotted an error?
More in Distributed & parallel computing
Kubernetes
Cloud Native Computing Foundation · Containers & virtualization
Open-source system for scheduling, scaling and operating containerized workloads across a cluster of machines
vLLM
vLLM project (originated at UC Berkeley Sky Computing Lab) · Local LLM inference & serving
High-throughput LLM inference and serving engine with PagedAttention, continuous batching, quantization and an OpenAI-compatible server for GPU and accelerator clusters
GNU Parallel
GNU Project (Ole Tange) · Distributed & parallel computing
Shell tool that runs commands in parallel over input lines on one or several machines, as a drop-in alternative to xargs and shell loops
Slurm Workload Manager
SchedMD LLC · Distributed & parallel computing
Open-source cluster resource manager and job scheduler for Linux clusters, allocating nodes, launching jobs and managing queues on many HPC systems
Open MPI
Open MPI consortium · Distributed & parallel computing
Open-source implementation of the MPI message-passing standard used to run tightly coupled parallel programs across the nodes of a cluster
exo
Exo Labs · Distributed & parallel computing
Open-source software that pools several Apple Silicon Macs (and Linux hosts) into one local inference cluster, sharding large models across devices with MLX