在深度学习开发中,我们常被一个误区困扰:使用
nvidia-smi查到的 CUDA 版本(驱动支持的最高版本),并不等同于当前环境实际调用的 CUDA Toolkit 版本(nvcc -V)。
nvidia-smi 反应的是显卡驱动 (Driver) 能够支持的 CUDA 最大版本,它决定了你能运行多高版本的 Toolkit,但并不强制要求你的项目环境必须使用这个最高版本。

当前环境实际调用的 CUDA Toolkit 版本(nvcc -V)

首先查看系统中已安装的 CUDA 版本目录:
bash
ls -l /usr/local

安装目标 CUDA 版本
前往 NVIDIA 官网 下载对应版本的安装包 (推荐安装CUDA Toolkit 12.4.1)
或者根据 PyTorch 下载 CUDA 版本
python
import torch
print(torch.__version__)
print(torch.version.cuda)

bash
sudo sh cuda_12.4.1_550.54.15_linux.run
开始运行后等待时间比较久

💡 安装时的重要提醒:
在安装 NVIDIA 官方 CUDA Toolkit 时,安装程序通常会询问是否要安装显卡驱动(Driver)。如果你所在的服务器已经有正常工作的驱动,一定要取消勾选 Driver 的安装,只安装 Toolkit,否则可能会导致显卡驱动覆盖错误,导致 nvidia-smi 失效。
然后
bash
# 编辑文件
vim ~/.bashrc
# 在末尾添加
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
# 保存退出并使其立即生效
source ~/.bashrc
检查软链接:如果您的系统中安装了多个版本的CUDA,可能需要更新软链接/usr/local/cuda指向新版本的CUDA。您可以删除旧的软链接并创建一个新的指向CUDA 12.2的软链接:
bash
sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-12.4 /usr/local/cuda
这样,/usr/local/cuda就会指向CUDA 12.4的安装目录。
成功后,再进行 nvcc -V
