CUDA版本切换¶
注意:如果没有二次编译代码的需求,不需要单独安装CUDA。
此文档所示内容,仅作为便利之用,不作为所提供设备的服务质量范畴。
注意
nvidia-smi
右上角的CUDA Version
并非当前cuda版本,此处表示当前驱动最高支持的cuda版本!!!
nvidia-smi
右上角的CUDA Version
并非当前cuda版本,此处表示当前驱动最高支持的cuda版本!!!
nvidia-smi
右上角的CUDA Version
并非当前cuda版本,此处表示当前驱动最高支持的cuda版本!!!
1. 查看当前cuda版本¶
1.1 Winodws镜像¶
打开文件夹 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
,里面就是当前默认安装的cuda。
这里看到的是系统默认的cuda,并不表示conda环境中的cuda版本
1.2 Linux ( Ubuntu )镜像¶
ldconfig -p | grep cuda
libnvrtc.so.12 (libc6,x86-64) => /usr/local/cuda-12.4/targets/x86_64-linux/lib/libnvrtc.so.12
libnvrtc.so (libc6,x86-64) => /usr/local/cuda-12.4/targets/x86_64-linux/lib/libnvrtc.so
libnvrtc-builtins.so.12.4 (libc6,x86-64) => /usr/local/cuda-12.4/targets/x86_64-linux/lib/libnvrtc-builtins.so.12.4
libnvrtc-builtins.so (libc6,x86-64) => /usr/local/cuda-12.4/targets/x86_64-linux/lib/libnvrtc-builtins.so
输出的内容.so后的数字即为版本号。
1.3 Conda虚拟环境中¶
在切换到所需的 conda虚拟环境 之后,也可以通过以下命令来查看当前的版本:
(torch212-py39-cuda118) root@xxx:~# conda list
# packages in environment at /opt/anaconda3/envs/torch212-py39-cuda118:
#
# Name Version Build Channel
_libgcc_mutex 0.1 main
_openmp_mutex 5.1 1_gnu
asttokens 2.0.5 pyhd3eb1b0_0 main
backcall 0.2.0 pyhd3eb1b0_0 main
blas 1.0 mkl main
brotli-python 1.0.9 py39h6a678d5_7 main
bzip2 1.0.8 h7b6447c_0 main
ca-certificates 2023.08.22 h06a4308_0 main
certifi 2023.11.17 py39h06a4308_0 main
cffi 1.15.1 py39h74dc2b5_0 main
charset-normalizer 2.0.4 pyhd3eb1b0_0 main
comm 0.1.2 py39h06a4308_0 main
cryptography 41.0.3 py39h130f0dd_0 main
cuda-cudart 11.8.89 0 nvidia
cuda-cupti 11.8.87 0 nvidia
cuda-libraries 11.8.0 0 nvidia
cuda-nvrtc 11.8.89 0 nvidia
cuda-nvtx 11.8.86 0 nvidia
cuda-runtime 11.8.0 0 nvidia
cudatoolkit 11.8.0 h6a678d5_0 main
cudnn 8.9.2.26 cuda11_0 main
找到上面结果中的cudatoolkit
,他的版本,既是当前环境的cuda版本。
2. 安装其他版本的CUDA¶
2.1 conda虚拟环境(推荐)¶
1. 查找所需版本的cuda版本¶
root@xxxx:~# conda search cudatoolkit -c nvidia -c conda-forge
Loading channels: done
# Name Version Build Channel
cudatoolkit 9.0 h13b8566_0 pkgs/main
cudatoolkit 9.2 0 nvidia
cudatoolkit 9.2 0 pkgs/main
cudatoolkit 9.2.148 h33e3169_12 conda-forge
cudatoolkit 9.2.148 h33e3169_13 conda-forge
cudatoolkit 9.2.148 h60dc4a4_10 conda-forge
cudatoolkit 9.2.148 h60dc4a4_11 conda-forge
cudatoolkit 9.2.148 h80a95b2_10 conda-forge
cudatoolkit 9.2.148 h80a95b2_6 conda-forge
cudatoolkit 9.2.148 h80a95b2_7 conda-forge
cudatoolkit 9.2.148 h80a95b2_8 conda-forge
cudatoolkit 9.2.148 h80a95b2_9 conda-forge
cudatoolkit 10.0.130 0 nvidia
cudatoolkit 10.0.130 0 pkgs/main
cudatoolkit 10.0.130 h8c5a6a4_10 conda-forge
cudatoolkit 10.0.130 h8c5a6a4_11 conda-forge
cudatoolkit 10.0.130 h9ed11e1_12 conda-forge
cudatoolkit 10.0.130 h9ed11e1_13 conda-forge
cudatoolkit 10.0.130 hf841e97_10 conda-forge
cudatoolkit 10.0.130 hf841e97_6 conda-forge
cudatoolkit 10.0.130 hf841e97_7 conda-forge
cudatoolkit 10.0.130 hf841e97_8 conda-forge
cudatoolkit 10.0.130 hf841e97_9 conda-forge
cudatoolkit 10.1.168 0 pkgs/main
cudatoolkit 10.1.243 h036e899_10 conda-forge
cudatoolkit 10.1.243 h036e899_6 conda-forge
cudatoolkit 10.1.243 h036e899_7 conda-forge
cudatoolkit 10.1.243 h036e899_8 nvidia
cudatoolkit 10.1.243 h036e899_8 conda-forge
cudatoolkit 10.1.243 h036e899_9 conda-forge
cudatoolkit 10.1.243 h6bb024c_0 nvidia
cudatoolkit 10.1.243 h6bb024c_0 pkgs/main
cudatoolkit 10.1.243 h6d9799a_12 conda-forge
cudatoolkit 10.1.243 h6d9799a_13 conda-forge
cudatoolkit 10.1.243 h8cb64d8_10 conda-forge
cudatoolkit 10.1.243 h8cb64d8_11 conda-forge
cudatoolkit 10.2.89 h6bb024c_0 nvidia
cudatoolkit 10.2.89 h713d32c_10 conda-forge
cudatoolkit 10.2.89 h713d32c_11 conda-forge
cudatoolkit 10.2.89 h8f6ccaa_10 conda-forge
cudatoolkit 10.2.89 h8f6ccaa_6 conda-forge
cudatoolkit 10.2.89 h8f6ccaa_7 conda-forge
cudatoolkit 10.2.89 h8f6ccaa_8 nvidia
cudatoolkit 10.2.89 h8f6ccaa_8 conda-forge
cudatoolkit 10.2.89 h8f6ccaa_9 conda-forge
cudatoolkit 10.2.89 hdec6ad0_12 conda-forge
cudatoolkit 10.2.89 hdec6ad0_13 conda-forge
cudatoolkit 10.2.89 hfd86e86_0 pkgs/main
cudatoolkit 10.2.89 hfd86e86_1 pkgs/main
cudatoolkit 11.0.3 h15472ef_10 conda-forge
cudatoolkit 11.0.3 h15472ef_6 conda-forge
cudatoolkit 11.0.3 h15472ef_7 conda-forge
cudatoolkit 11.0.3 h15472ef_8 nvidia
cudatoolkit 11.0.3 h15472ef_8 conda-forge
cudatoolkit 11.1.1 h6406543_9 conda-forge
cudatoolkit 11.1.1 ha002fc5_10 conda-forge
cudatoolkit 11.1.1 ha002fc5_11 conda-forge
cudatoolkit 11.1.1 hb139c0e_12 conda-forge
cudatoolkit 11.1.1 hb139c0e_13 conda-forge
cudatoolkit 11.1.74 h6bb024c_0 nvidia
cudatoolkit 11.2.0 h73cb219_7 conda-forge
cudatoolkit 11.2.0 h73cb219_8 nvidia
cudatoolkit 11.2.0 h73cb219_8 conda-forge
cudatoolkit 11.2.0 h73cb219_9 conda-forge
cudatoolkit 11.2.1 h8204236_8 nvidia
cudatoolkit 11.2.1 h8204236_8 conda-forge
cudatoolkit 11.2.1 h8204236_9 conda-forge
cudatoolkit 11.2.2 hbe64b41_10 conda-forge
cudatoolkit 11.2.2 hbe64b41_11 conda-forge
cudatoolkit 11.2.2 hc23eb0c_12 conda-forge
cudatoolkit 11.2.2 hc23eb0c_13 conda-forge
cudatoolkit 11.2.2 he111cf0_10 conda-forge
...
2. 安装cudatoolkit¶
这里的 xx.xx 替换为前面找到的版本号
2.2 使用安装包安装¶
提示
我们不建议您执行这个操作。
如自行安装CUDA/显卡驱动导致机器无法使用,本公司不承担任何售后。
1. Windows系统¶
-
下载CUDA
-
下载地址:
桌面
->常用软件
->CUDA
-
-
安装: 运行所需版本的exe文件安装即可。
这里安装cuda之后,在conda中,依然是优先使用conda中安装的
cudatoolkit
版本对应的cuda。
2. Ubuntu Linux¶
提示
如非二次编译需求,请勿修改系统默认的 驱动
/cuda
版本。
根据所需版本,直接复制表格中的安装命令。
版本 | 安装命令 | 安装路径 |
---|---|---|
cuda_9.0 | sudo bash /public-share/常用软件/CUDA/cuda_9.0.176_384.81_linux.run --toolkit --silent --no-drm --toolkitpath=/usr/local/cuda-9.0 --override |
/usr/local/cuda_9.0 |
cuda_9.1 | sudo bash /public-share/常用软件/CUDA/cuda_9.1.85_387.26_linux.run --toolkit --silent --no-drm --toolkitpath=/usr/local/cuda-9.1 --override |
/usr/local/cuda_9.1 |
cuda_9.2 | sudo bash /public-share/常用软件/CUDA/cuda_9.2.148_396.37_linux.run --toolkit --silent --no-drm --toolkitpath=/usr/local/cuda-9.2 --override |
/usr/local/cuda_9.2 |
cuda_10.0 | sudo bash /public-share/常用软件/CUDA/cuda_10.0.130_410.48_linux.run --toolkit --silent --no-drm --toolkitpath=/usr/local/cuda-10.0 --override |
/usr/local/cuda_10.0 |
cuda_10.1 | sudo bash /public-share/常用软件/CUDA/cuda_10.1.243_418.87.00_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-10.1 --override |
/usr/local/cuda_10.1 |
cuda_10.2 | sudo bash /public-share/常用软件/CUDA/cuda_10.2.89_440.33.01_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-10.2 --override |
/usr/local/cuda_10.2 |
cuda_11.0 | sudo bash /public-share/常用软件/CUDA/cuda_11.0.3_450.51.06_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.0 --override |
/usr/local/cuda_11.0 |
cuda_11.1 | sudo bash /public-share/常用软件/CUDA/cuda_11.1.1_455.32.00_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.1 --override |
/usr/local/cuda_11.1 |
cuda_11.2 | sudo bash /public-share/常用软件/CUDA/cuda_11.2.2_460.32.03_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.2 --override |
/usr/local/cuda_11.2 |
cuda_11.3 | sudo bash /public-share/常用软件/CUDA/cuda_11.3.1_465.19.01_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.3 --override |
/usr/local/cuda_11.3 |
cuda_11.4 | sudo bash /public-share/常用软件/CUDA/cuda_11.4.4_470.82.01_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.4 --override |
/usr/local/cuda_11.4 |
cuda_11.5 | sudo bash /public-share/常用软件/CUDA/cuda_11.5.2_495.29.05_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.5 --override |
/usr/local/cuda_11.5 |
cuda_11.6 | sudo bash /public-share/常用软件/CUDA/cuda_11.6.2_510.47.03_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.6 --override |
/usr/local/cuda_11.6 |
cuda_11.7 | sudo bash /public-share/常用软件/CUDA/cuda_11.7.1_515.65.01_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.7 --override |
/usr/local/cuda_11.7 |
cuda_11.8 | sudo bash /public-share/常用软件/CUDA/cuda_11.8.0_520.61.05_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-11.8 --override |
/usr/local/cuda_11.8 |
cuda_12.0 | sudo bash /public-share/常用软件/CUDA/cuda_12.0.1_525.85.12_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.0 |
/usr/local/cuda_12.0 |
cuda_12.1 | sudo bash /public-share/常用软件/CUDA/cuda_12.1.1_530.30.02_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.1 |
/usr/local/cuda_12.1 |
cuda_12.2 | sudo bash /public-share/常用软件/CUDA/cuda_12.2.2_535.104.05_linux.ru --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.2 |
/usr/local/cuda_12.2 |
cuda_12.3 | sudo bash /public-share/常用软件/CUDA/cuda_12.3.2_545.23.08_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.3 |
/usr/local/cuda_12.3 |
cuda_12.4 | sudo bash /public-share/常用软件/CUDA/cuda_12.4.1_550.54.15_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.4 |
/usr/local/cuda_12.4 |
cuda_12.5 | sudo bash /public-share/常用软件/CUDA/cuda_12.5.1_555.42.06_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.5 |
/usr/local/cuda_12.5 |
cuda_12.6 | sudo bash /public-share/常用软件/CUDA/cuda_12.6.3_560.35.05_linux.run --toolkit --silent --no-drm --installpath=/usr/local/cuda-12.6 |
/usr/local/cuda_12.6 |
如需其他版本,请查看
/public-share/常用软件/CUDA/
文件夹,根据需要选择所需版本的.run
文件安装即可。
安装之后,正常情况下,会自动创建/usr/local/cuda
到 /usr/local/cuda_x.x
的软链,如果环境变量设置正确,则可以通过执行nvcc -V
来查看当前CUDA版本。
3. 使用切换工具¶
1. Ubuntu Linux¶
-
在终端中执行:
-
会来到如下界面
-
根据需要选择即可
如自行调整过系统环境变量设置,此工具可能会失效。
2. Windows¶
暂时没有工具提供。
4. 其他补充¶
- 显卡和所支持的cuda版本的对应关系:
- CUDA9.x:1060、1070、1070Ti、1080
- CUDA10.x:1060、1070、1070Ti、1080、1660Ti、1660S、2080Ti
- CUDA11.0~11.3:1060、1070、1070Ti、1080、2080Ti、3060、3070、3080、3080Ti、3090、3090Ti
- CUDA11.3:1060、1070、1070Ti、1080、2080Ti、3060、3070、3080、3080Ti、3090、3090Ti、4060Ti、4070Ti、4090
- CUDA12.x:1060、1070、1070Ti、1080、2080Ti、3060、3070、3080、3080Ti、3090、3090Ti、4060Ti、4070Ti、4090
-
执行
nvidia-smi
命令后,返回结果右上角显示的CUDA Version
为当前驱动所支持的CUDA最高版本,而非当前CUDA版本。