跳到主要内容 Linux 系统升级 CUDA 到最新版本 | 极客日志
C++ AI 算法
Linux 系统升级 CUDA 到最新版本 Linux 系统升级 CUDA 需检查 GCC 及 GPU 兼容性,卸载旧版本后通过包管理器或.run 文件安装新版 Toolkit。配置环境变量并验证 nvcc 与 nvidia-smi。可选升级 cuDNN 支持深度学习。常见问题包括驱动不兼容、路径冲突及权限设置。
Linux 系统中升级 CUDA 到最新版本
在 Linux 系统中升级 CUDA 到最新版本(例如 CUDA Toolkit 12.6),需要确保系统兼容性、卸载旧版本、安装新版本并验证安装。以下是清晰有序的步骤,适用于 Ubuntu/Debian 或 Red Hat/CentOS 等常见 Linux 发行版,涵盖环境准备、安装方法和注意事项。
1. 前期准备
1.1 检查系统兼容性
检查 GCC 版本 :
CUDA 需要兼容的 GCC 版本(例如,CUDA 12.6 支持 GCC 11.x 或更低)。检查当前版本:
gcc --version
如需安装或切换 GCC 版本:
apt install gcc-11 g++-11
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 50
sudo
sudo
检查 Linux 版本 :
确认发行版和版本(CUDA 支持 Ubuntu、Debian、Fedora、CentOS 等):
确认 GPU 支持 CUDA :
检查系统中是否有 NVIDIA GPU:
1.2 验证当前 CUDA 版本
nvcc --version 显示 CUDA Toolkit 版本。
nvidia-smi 显示驱动支持的 CUDA 版本(可能与 Toolkit 版本不同)。
1.3 备份系统
2. 卸载旧版本 CUDA(可选)
2.1 卸载通过包管理器安装的 CUDA sudo yum remove cuda nvidia-cuda-toolkit
sudo apt purge nvidia-cuda-toolkit cuda*
sudo apt autoremove
2.2 卸载通过.run 文件安装的 CUDA
查找安装目录(通常为 /usr/local/cuda-X.Y)。
export PATH=/usr/local/cuda-X.Y/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-X.Y/lib64:$LD_LIBRARY_PATH
sudo rm -rf /usr/local/cuda-X.Y
2.3 验证卸载
3. 安装最新 CUDA Toolkit(12.6)
3.1 方法 1:使用 NVIDIA 官方包管理器(推荐) 此方法通过添加 NVIDIA 仓库安装,适合 Ubuntu/Debian 和 CentOS/RHEL,易于管理和升级。
Ubuntu/Debian
cuda 是一个元包,会安装最新版本的 CUDA Toolkit(12.6)和兼容的 NVIDIA 驱动。
export PATH=/usr/local/cuda-12.6/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.6/lib64:$LD_LIBRARY_PATH
sudo apt update
sudo apt install cuda
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
CentOS/RHEL
配置环境变量 :
同 Ubuntu,编辑 ~/.bashrc 添加路径。
添加 NVIDIA CUDA 仓库 :
执行类似以下命令(根据发行版调整,例如 RHEL 8):
sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo
3.2 方法 2:使用.run 文件安装
按提示选择安装选项(可选择不安装驱动程序,仅安装 Toolkit)。
默认安装路径为 /usr/local/cuda-12.6。
配置环境变量 :
同上,编辑 ~/.bashrc 添加路径。
sudo sh cuda_12.6.0_555.42.02_linux.run
wget https://developer.download.nvidia.com/compute/cuda/12.6.0/local_installers/cuda_12.6.0_555.42.02_linux.run
3.3 方法 3:使用 Conda 安装(Anaconda 环境) 适用于深度学习用户,集成 TensorFlow/PyTorch。
conda install -c nvidia cudatoolkit=12.6
conda activate your_env_name
4. 验证安装 编译示例程序 :
下载 NVIDIA CUDA 样本:
git clone https://github.com/NVIDIA/cuda-samples.git
cd cuda-samples/Samples/0_Introduction/vectorAdd
make
./vectorAdd
确认驱动版本和 CUDA 版本(例如,驱动支持 CUDA 12.6)。
nvcc: NVIDIA (R) Cuda compiler driver
Cuda compilation tools, release 12.6, V12.6.68
5. 升级 cuDNN(可选) cuDNN 是深度学习加速库,常与 CUDA 一起使用。
注册 NVIDIA 开发者账户 :
访问 NVIDIA cuDNN 下载页面 ,登录并下载与 CUDA 12.6 兼容的 cuDNN(例如,cuDNN 9.x)。
验证 :
检查 cuDNN 版本(需要运行依赖 cuDNN 的程序,如 TensorFlow)。
tar -xvf cudnn-linux-x86_64-9.x.x.x_cuda12.x-archive.tar.xz
sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda-12.6/include
sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda-12.6/lib64
sudo chmod a+r /usr/local/cuda-12.6/include/cudnn*.h /usr/local/cuda-12.6/lib64/libcudnn*
6. 注意事项与常见问题
6.1 驱动版本不兼容
问题 :nvidia-smi 显示 CUDA 版本低于 12.6。
sudo apt install nvidia-driver-555
6.2 安装冲突
问题 :旧 CUDA 残留导致安装失败。
解决 :彻底卸载旧版本(见步骤 2),检查 /usr/local/ 下是否有旧 CUDA 目录。
6.3 环境变量未生效 解决 :确认 ~/.bashrc 中的 PATH 和 LD_LIBRARY_PATH 设置正确,并运行:
6.4 多版本共存 CUDA 支持并行安装(side-by-side)。安装到不同目录(如 /usr/local/cuda-12.6),使用符号链接切换版本:
sudo ln -sf /usr/local/cuda-12.6 /usr/local/cuda
或通过 update-alternatives 管理:
sudo update-alternatives --config cuda
6.5 权限问题 确保使用 sudo 执行安装命令,安装目录(如 /usr/local/cuda)有正确权限:
sudo chown -R root:root /usr/local/cuda-12.6
7. 总结
检查系统兼容性(GPU、Linux 版本、GCC)。
卸载旧版本 CUDA(若需要)。
通过包管理器或.run 文件安装 CUDA 12.6。
配置环境变量(PATH 和 LD_LIBRARY_PATH)。
验证安装(nvcc --version 和示例程序)。
(可选)升级 cuDNN 以支持深度学习。
参考资源 相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
RSA密钥对生成器 生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
Mermaid 预览与可视化编辑 基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
Base64 字符串编码/解码 将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
Base64 文件转换器 将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
Markdown转HTML 将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online