CUDA 次要版本兼容性
CUDA 内置目标弃用通知
Numba 内置的 CUDA 目标已被弃用,后续开发已转移到 NVIDIA numba-cuda 包。请参阅内置 CUDA 目标弃用和维护状态。
CUDA 次要版本兼容性(MVC)允许使用比驱动程序支持的 CUDA 版本更新的 CUDA Toolkit 版本,前提是 Toolkit 和驱动程序都具有相同的主版本。例如,通过 MVC 支持 CUDA Toolkit 11.5 与 CUDA 驱动程序 450(CUDA 版本 11.0)一起使用。
Numba 支持在 Linux 上使用外部 pynvjitlink
包实现 CUDA 12 的 MVC。
Numba 支持在 Linux 上使用外部 cubinlinker
和 ptxcompiler
包实现 CUDA 11 的 MVC,但受以下限制:
不支持归档链接。
不支持协作组,因为它们需要链接归档。
Windows 上不支持 MVC。
安装
CUDA 12
要使用 MVC 支持,必须安装 pynvjitlink
包。要使用 conda 安装,请使用
conda install -c rapidsai pynvjitlink
要使用 pip 安装,请使用 NVIDIA 包索引
pip install --extra-index-url https://pypi.nvidia.com pynvjitlink-cu12
CUDA 11
要使用 MVC 支持,必须从相应的通道安装 cubinlinker
和 ptxcompiler
编译器包。要使用 conda 安装,请使用
conda install -c rapidsai -c conda-forge cubinlinker ptxcompiler
要使用 pip 安装,请使用 NVIDIA 包索引
pip install --extra-index-url https://pypi.nvidia.com ptxcompiler-cu11 cubinlinker-cu11
启用 MVC 支持
通过设置环境变量来启用 MVC 支持
export NUMBA_CUDA_ENABLE_MINOR_VERSION_COMPATIBILITY=1
或者在使用 Numba 中的任何 CUDA 功能之前设置配置变量
from numba import config
config.CUDA_ENABLE_MINOR_VERSION_COMPATIBILITY = True