Install & Compatibility
Where this runs
tested against v10.9.0.58 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
build_error
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 4.9s · import 0.000s · 286MB
284MB installed
● package 284MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
cufft
✓ from nvidia.cufft import cufft
✗ from nvidia.cufft import fft
This quickstart demonstrates how to perform a 1D Fast Fourier Transform using `CuPy`, which internally leverages the `nvidia-cufft-cu11` native libraries. It creates a random array on the GPU, computes its FFT, and optionally compares the result with a NumPy FFT on the CPU. Ensure `cupy` is installed (`pip install cupy-cuda11x`).
import cupy as cp
import numpy as np
# Ensure a CUDA-enabled GPU is available
if not cp.cuda.is_available():
print("CUDA is not available. CuPy and cuFFT require a GPU.")
exit()
# Create a CuPy array on the GPU
n = 1024
x_gpu = cp.random.rand(n, dtype=cp.float32)
# Perform a 1D FFT using CuPy (which uses cuFFT internally)
y_gpu = cp.fft.fft(x_gpu)
# Optionally, copy back to host and compare with NumPy
y_cpu = cp.asnumpy(y_gpu)
x_cpu = cp.asnumpy(x_gpu)
y_numpy = np.fft.fft(x_cpu)
print(f"Original GPU array type: {type(x_gpu)}")
print(f"FFT result GPU array type: {type(y_gpu)}")
print(f"First 5 elements of GPU FFT: {y_gpu[:5]}")
print(f"First 5 elements of NumPy FFT: {y_numpy[:5]}")
print(f"Max absolute difference between CuPy FFT and NumPy FFT: {cp.max(cp.abs(y_gpu - cp.asarray(y_numpy))):.6e}")
Debug
Known issues
breakingThis `nvidia-cufft-cu11` package is specifically built for CUDA 11.x. Using it with an incompatible CUDA Toolkit version (e.g., CUDA 10.x or 12.x) or an older/newer GPU driver may lead to runtime errors or unexpected behavior due to ABI incompatibilities. Always match the `cuXX` suffix to your installed CUDA Toolkit version.fixEnsure your installed NVIDIA CUDA Toolkit version (checked via `nvcc --version`) matches the `cu11` suffix. If using CUDA 12.x, consider installing `nvidia-cufft-cu12` instead. Update GPU drivers to be compatible with your CUDA Toolkit version.
affects: All versions
gotchaThis package (`nvidia-cufft-cu11`) provides low-level C/C++ native runtime libraries and does not expose a direct Python API for FFT operations. Attempting to `import nvidia_cufft_cu11` or similar will not work. To use cuFFT from Python, you must install and use a Python binding library such as `CuPy` (`pip install cupy-cuda11x`) or `nvmath-python` (`pip install nvmath-python[cu11]`).fixInstall a Python binding library (e.g., `CuPy` or `nvmath-python`) and use its provided APIs to interact with the underlying cuFFT library.
affects: All versions
deprecatedSupport for cuFFT callback functionality using separately compiled device code was deprecated in CUDA 11.4 and later. While this package is for CUDA 11.x, advanced users relying on custom FFT callbacks might experience performance overheads or functional issues, as the implementation for callbacks was slated for an update to remove these. (CUFFT 10.9.0.58 is released October 3, 2022, after CUDA 11.4 was released, meaning this deprecation applies).fixReview NVIDIA cuFFT documentation for the latest guidance on callbacks. Consider alternative approaches or migration paths if your application heavily relies on this deprecated callback mechanism. Future versions might have an updated implementation.
affects: 10.9.0.58 and potentially earlier CUDA 11.x based versions.
gotchaThis library is distributed under an NVIDIA Proprietary Software License. Users should be aware of and comply with the terms and conditions of this license, which may differ significantly from open-source licenses.fixReview the NVIDIA Proprietary Software License linked from the PyPI page or NVIDIA developer website to understand its terms and restrictions.
affects: All versions
Upgrade
Version history
10.9.0.58latest on PyPI · released Oct 3, 2022
Audit
Dependencies
NVIDIA CUDA Toolkit (11.x)requiredProvides the necessary CUDA runtime environment and driver compatibility for the native CUFFT libraries. This is an external system-level dependency.
CuPyoptionalCommon Python binding library to interact with CUDA and CUFFT functionalities from Python.
nvmath-pythonoptionalNVIDIA's official Python bindings for CUDA-X math libraries, including cuFFT.