CUDA Python 11.8.4 Release notes

Released on October 7, 2024

Highlights

  • Resolve Issue #89: Fix getLocalRuntimeVersion searching for wrong libcudart version

  • Resolve Issue #90: Use new layout in preperation for cuda-python becoming a metapackage

CUDA namespace cleanup with a new module layout

Issue #75 explains in detail what the new module layout is, what problem it fixes and how it impacts the users. However for the sake of completeness, this release notes will highlight key points of this change.

Before this change, cuda-python was tightly coupled to CUDA Toolkit releases and all new features would inherit this coupling regardless of their applicability. As we develop new features, this coupling was becoming overly restrictive and motivated a new solution: Convert cuda-python into a metapackage where we use cuda as a namespace with existing bindings code moved to a cuda_bindings subpackage.

This patch release applies the new module layout for the bindings as follows:

  • cuda.cuda -> cuda.bindings.driver

  • cuda.ccuda -> cuda.bindings.cydriver

  • cuda.cudart -> cuda.bindings.runtime

  • cuda.ccudart -> cuda.bindings.cyruntime

  • cuda.nvrtc -> cuda.bindings.nvrtc

  • cuda.cnvrtc -> cuda.bindings.cynvrtc

Deprecation warnings are turned on as a notice to switch to the new module layout.

Note

This is non-breaking, backwards compatible change. All old module path will continue work as they “forward” user calls towards the new layout.

Limitations

Know issues

CUDA Functions Not Supported in this Release

  • Symbol APIs

    • cudaGraphExecMemcpyNodeSetParamsFromSymbol

    • cudaGraphExecMemcpyNodeSetParamsToSymbol

    • cudaGraphAddMemcpyNodeToSymbol

    • cudaGraphAddMemcpyNodeFromSymbol

    • cudaGraphMemcpyNodeSetParamsToSymbol

    • cudaGraphMemcpyNodeSetParamsFromSymbol

    • cudaMemcpyToSymbol

    • cudaMemcpyFromSymbol

    • cudaMemcpyToSymbolAsync

    • cudaMemcpyFromSymbolAsync

    • cudaGetSymbolAddress

    • cudaGetSymbolSize

    • cudaGetFuncBySymbol

  • Launch Options

    • cudaLaunchKernel

    • cudaLaunchCooperativeKernel

    • cudaLaunchCooperativeKernelMultiDevice

  • cudaSetValidDevices

  • cudaVDPAUSetVDPAUDevice