The cuda.bindings module has the following support policy:
- The module shares the same
major.minorversion with the CUDA Toolkit. The patch version (the third number in the version string), however, is reserved to reflect Python-only changes and is out of sync with the Toolkit patch version. - The module is actively maintained to support the latest CUDA major version and its prior major version. For example, as of writing the bindings for CUDA 12 & 13 are maintained. Any fix in the latest bindings would be backported to the prior major version.
- The module supports CUDA minor version compatibility, meaning that
cuda.bindings12.x supports any Toolkit 12.y. (Whether or not a binding API would actually correctly function depends on the underlying driver and the Toolkit versions, as described in the compatibility documentation.) - The module supports all Python versions following the CPython EOL schedule. As of writing Python 3.10 - 3.14 are supported.
- The module exposes a Cython layer from which types and functions could be
cimport'd. While we strive to keep this layer stable, due to Cython limitations a new minor release of this module could require Cython layer users to rebuild their projects and update their pinning to this module.
As of cuda-bindings 13.0.2/12.9.3, wheels for the free-threaded interpreter are shipped to PyPI.
- Support for these builds is best effort, due to heavy use of built-in
modules that are known to be thread-unsafe, such as
ctypes. - For now, you are responsible for making sure that calls into
cuda-bindingslibraries are thread-safe. This is subject to change.
The NVIDIA CUDA Python team reserves rights to amend the above support policy. Any major changes, however, will be announced to the users in advance.