About this project
NVIDIA cuDF (pronounced "KOO-dee-eff") is an Apache 2.0 licensed, GPU-accelerated DataFrame library designed for tabular data processing. It is part of the NVIDIA CUDA-X suite of GPU-accelerated libraries.
The cuDF ecosystem consists of multiple libraries:
- libcudf: A CUDA C++ library with Apache Arrow compliant data structures and fundamental algorithms for tabular data.
- pylibcudf: A Python library providing Cython bindings for libcudf.
- cudf: A Python library providing a DataFrame library that mirrors the pandas API, along with cudf.pandas, a zero-code-change accelerator for existing pandas code that can be invoked via `python -m cudf.pandas` or loaded as a Jupyter extension.
- cudf-polars: A Python library providing a GPU engine for Polars, allowing lazy API operations to run on the GPU by calling `collect(engine="gpu")`.
- dask-cudf: A Python library providing a GPU backend for Dask DataFrames.
Notable projects that use cuDF include Spark RAPIDS (a GPU accelerator plugin for Apache Spark), Velox-cuDF (a Velox extension module to execute Velox plans on the GPU), and Sirius (a GPU-native SQL engine providing extensions for libraries like DuckDB).
Installation is available via pip (with CUDA version-specific suffixes such as -cu12 or -cu13), conda (via the rapidsai channel), or from source. The library supports reading Parquet files, dropping missing rows with null values, and performing groupby aggregations, among other data processing operations.
The library is open to community contributions and is actively maintained by NVIDIA. Questions and discussions can be posted in the RAPIDS Slack workspace.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.