Repolode
NVIDIA

NVIDIA/cudf

GPU-accelerated DataFrame library for tabular data, with a pandas-like API and a zero-code-change pandas accelerator.

Stars
9,795
Forks
1,156
Open issues
1,449
Last commit
21 hours ago

What is it?

cuDF is a GPU-accelerated DataFrame library for processing tabular data. Its Python package mirrors the pandas API, so code written for pandas can run on NVIDIA GPUs with minimal changes. The core is libcudf, a CUDA C++ library built on Apache Arrow compatible data structures and fundamental algorithms for tables.

The project is split into several packages. cudf provides the pandas-style DataFrame API, and cudf.pandas can accelerate unmodified pandas scripts or Jupyter notebooks by running them through the GPU. pylibcudf offers Cython bindings to libcudf, dask-cudf provides a GPU backend for Dask DataFrames, and cudf-polars adds a GPU engine for Polars lazy queries.

Installation is available via pip (with CUDA-version suffixes such as cu12 or cu13) and conda from the RAPIDS channels, with nightly builds also offered. It is part of NVIDIA's CUDA-X library suite, and other projects such as a Spark accelerator plugin and Velox-cuDF build on it.

Key features

  • 01Provides a DataFrame API largely compatible with pandas.
  • 02cudf.pandas accelerates unmodified pandas code via `python -m cudf.pandas`.
  • 03Includes a GPU engine for Polars lazy queries via engine="gpu".
  • 04Offers a GPU backend for Dask DataFrames through dask-cudf.
  • 05Built on Apache Arrow compatible columnar data structures in CUDA C++.

Use cases

  • Speeding up existing pandas data-processing scripts on NVIDIA GPUs without rewriting them.
  • Running large groupby, filter and aggregation workloads on tabular data in Python.
  • Adding GPU acceleration to Dask or Polars pipelines.
  • Building GPU-accelerated SQL or data processing engines on top of libcudf.

Quick start

  1. 1

    Install the cudf package for CUDA 12 with pip

    pip install cudf-cu12
  2. 2

    Import cudf and use it like pandas, reading a parquet file and running a groupby

Things to know

  • Requires an NVIDIA GPU with a compatible driver and CUDA version.
  • Installing from PyPI requires matching the CUDA major version via the -cu## suffix.

In collections

Topics

FAQ

What is cudf?
GPU-accelerated DataFrame library for tabular data, with a pandas-like API and a zero-code-change pandas accelerator. cuDF is a GPU-accelerated DataFrame library for processing tabular data. Its Python package mirrors the pandas API, so code written for pandas can run on NVIDIA GPUs with minimal changes. The core is libcudf, a CUDA C++ library built on Apache Arrow compatible data structures and fundamental algorithms for tables.
Is cudf free to use? What license does it have?
cudf is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is cudf still maintained?
Actively maintained. The last commit to cudf was on Nov 5, 2026.
What can I use cudf for?
Speeding up existing pandas data-processing scripts on NVIDIA GPUs without rewriting them. Running large groupby, filter and aggregation workloads on tabular data in Python. Adding GPU acceleration to Dask or Polars pipelines. Building GPU-accelerated SQL or data processing engines on top of libcudf.
How do I install cudf?
Install the cudf package for CUDA 12 with pip: pip install cudf-cu12 Import cudf and use it like pandas, reading a parquet file and running a groupby
Where can I get cudf?
The source code and installation instructions are on GitHub: https://github.com/NVIDIA/cudf

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects