cuda-bindings 12.9.7 Release notes#
Bugfixes#
Fixed
CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM=0incorrectly enabling per-thread default stream mode. (PR #2110)Fixed a use-after-free in
cudaGraphGetEdges,cudaGraphNodeGetDependencies,cudaGraphNodeGetDependentNodes,cudaStreamGetCaptureInfo, and their driver-API counterparts (cuGraphGetEdges,cuGraphNodeGetDependencies,cuGraphNodeGetDependentNodes,cuStreamGetCaptureInfo). The returnedcudaGraphEdgeData/CUgraphEdgeDatawrappers were backed by a scratch buffer that was freed before the call returned, leaving every wrapper holding a dangling pointer. The returned wrappers now own deep copies of the edge data. (Issue #1804, PR #2110)Fixed a double-free in the generated setters for list-valued struct members (e.g.
CUlaunchConfig.attrs,CUDA_MEM_ALLOC_NODE_PARAMS.accessDescs, external-semaphore and batch-mem-op node parameter arrays, and their runtime counterparts). Assigning an empty list freed the internal buffer but left the cached pointer non-NULL, so a subsequent assignment or__dealloc__would callfree()again on the dangling pointer. (PR #2115)
Miscellaneous#
NVRTC bindings now use pre-generated Cython files and no longer require pyclibrary header parsing at build time. (PR #1957)
Improved generated documentation and argument names, including the
ind_exargument naming bug. (PR #1928, PR #2110)Source archives now include git archival metadata for setuptools-scm. (PR #1756)
Known issues#
Updating from older versions (v12.6.2.post1 and below) via
pip install -U cuda-pythonmight not work. Please do a clean re-installation by uninstallingpip uninstall -y cuda-pythonfollowed by installingpip install cuda-python.