【转载】Linux安装CUDA 和 cuDNN,以及CUDA个人环境和系统环境的切换

文章介绍了如何在Linux服务器上安装和管理多个CUDA版本,并指出如何查看PyTorch实际使用的CUDA版本,强调了torch.version.cuda并不一定反映运行时的版本。同时,提到了环境变量配置对切换CUDA版本的影响,以及nvcc-V和nvidia-smi显示不同版本的原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux服务器可以装多个cuda版本,可以在自己bashrc下切换,也可以切换默认的/usr/local/cuda指向的cuda版本。以下为会用到的一些内容,仅为转载。

查看目前虚拟环境pytorch使用的cuda版本。

正确查看方式:

想要查看 Pytorch 实际使用的运行时的 cuda 目录,可以直接输出之前介绍的 cpp_extension.py 中的 CUDA_HOME 变量。

import torch
import torch.utils
import torch.utils.cpp_extension
torch.utils.cpp_extension.CUDA_HOME        #输出 Pytorch 运行时使用的 cuda 

在这里插入图片描述
上面输出的/usr/local/cuda即为软链接的cuda版本。

不正确查看方式:

事实上,使用torch,version.cuda命令查看输出的 cuda 的版本并不一定是 Pytorch 在实际系统上运行时使用的 cuda 版本,而是编译该 Pytorch release 版本时使用的 cuda 版本。
在这里插入图片描述

参考:1. 查看pytorch运行时真正调用的cuda版本

CUDA和CUDNN的安装及检测

请参考,亲测可行

  1. 【Linux】安装CUDA 11.2 和 cuDNN 8.4.0并检查是否安装成功
  2. 服务器中安装多版本的cuda

注意安装完cuda后的环境变量配置,下面的配置是在~/.bashrc还是在/etc/profile中,取决于自己想改变的。如果一个服务器上有多个用户,前者只改变自己的cuda使用版本,后者改变默认的(即会影响别人的,如果别人用的是默认的)

export PATH=//usr/local/cuda-11.2/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64$LD_LIBRARY_PATH

nvcc -V和nvidia-smi出现的cuda版本不同

系统安装了多个,怎么查看不同的版本?nvcc -V和nvidia-smi显示的cuda版本不同?
是由于CUDA有两个主要的API:runtime(运行时) API和driver API,具体地请参考:

nvcc -V和nvidia-smi出现的cuda版本不同


以上均为转载且标明出处,侵删。

<think>好的,我需要帮助用户在Linux系统中正确安装配置CUDAcuDNN。首先,我需要回忆相关的步骤注意事项。根据用户提供的引用内容,他们提到了安装CUDA 11.2、cuDNN 8.4.0以及多版本CUDA管理,还有环境变量配置的问题。 首先,安装前的准备工作很重要。需要检查系统是否满足CUDA的要求,比如支持的Linux版本、足够的存储空间,以及是否有NVIDIA显卡驱动。用户可能已经安装了驱动,但如果没有,可能需要先安装。根据引用[1][2],驱动版本必须CUDA版本兼容,这点需要确认。 接下来是下载CUDA工具包。用户需要去NVIDIA官网下载对应版本的CUDA安装包,这里要注意选择runfile(local)格式,因为这样更灵活,尤其是在多版本管理时。安装过程中可能需要禁用nouveau驱动,避免冲突。这部分在引用[1]中提到了安装多版本CUDA的情况,可能需要处理不同版本的切换安装CUDA后,配置环境变量是关键步骤。用户需要将CUDA的路径添加到.bashrc或.zshrc中,尤其是PATHLD_LIBRARY_PATH。引用[3]提到,cuDNN的库路径也需要添加到LD_LIBRARY_PATH,否则某些应用会报错。这里要注意路径是否正确,不同版本的CUDAcuDNN路径可能不同。 然后是安装cuDNN。用户需要下载对应CUDA版本的cuDNN,解压后复制文件到CUDA安装目录。这一步需要确保文件权限正确,可能需要使用sudo。验证cuDNN是否安装成功可以通过检查头文件库文件是否存在,或者运行示例程序。 关于多版本CUDA切换,引用[1][3]提到可以通过修改软链接或者使用环境变量来切换。例如,使用ln -sf指定当前使用的CUDA版本,或者在需要时调整PATH变量。这对于同时需要不同CUDA版本的项目很有帮助。 最后,验证安装是否成功。编译并运行CUDA的示例程序,比如deviceQuery,查看输出是否正常。对于cuDNN,可能没有直接的可执行文件,但可以检查版本文件或编译cuDNN的样例代码。 用户可能遇到的问题包括驱动不兼容、环境变量配置错误、文件权限问题,或者版本不匹配。需要提醒用户仔细检查每个步骤,特别是版本对应关系,参考官方文档已验证的教程,如引用[1][2][3]中的方法。 此外,生成的相关问题可能涉及安装后的测试、多版本管理、常见错误解决等。需要确保回答结构清晰,分步骤指导,避免遗漏关键点,比如环境变量的设置cuDNN的文件复制步骤,这些容易出错的地方需要特别强调。</think>### Linux环境安装与配置CUDAcuDNN步骤 #### **1. 安装前准备** - **检查显卡驱动** 确保已安装CUDA兼容的NVIDIA驱动。使用命令查看驱动版本: ```bash nvidia-smi ``` 输出右上角显示支持的CUDA最高版本(如`12.2`),需选择≤此版本的CUDA[^1]。 - **禁用nouveau驱动** 编辑文件`/etc/modprobe.d/blacklist.conf`,添加: ```bash blacklist nouveau options nouveau modeset=0 ``` 执行`update-initramfs -u`后重启系统。 --- #### **2. 安装CUDA** - **下载CUDA工具包** 访问[NVIDIA CUDA下载页](https://developer.nvidia.com/cuda-toolkit-archive),选择目标版本(如`CUDA 11.2`)系统配置,下载`runfile (local)`格式文件。 - **执行安装** 赋予文件执行权限并运行: ```bash chmod +x cuda_11.2.2_460.32.03_linux.run sudo ./cuda_11.2.2_460.32.03_linux.run ``` 安装时**取消勾选驱动安装**(若已安装驱动),其他选项默认。 - **配置环境变量** 在`~/.bashrc`或`~/.zshrc`中添加: ```bash export PATH=/usr/local/cuda-11.2/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64:$LD_LIBRARY_PATH ``` 执行`source ~/.bashrc`生效。 --- #### **3. 安装cuDNN** - **下载cuDNN** 从[NVIDIA cuDNN页面](https://developer.nvidia.com/cudnn)下载与CUDA版本匹配的cuDNN(如`CUDA 11.2`对应`cuDNN 8.4.0`),需注册账号。 - **解压并复制文件** 解压后将其内容复制到CUDA目录: ```bash tar -zxvf cudnn-11.2-linux-x64-v8.4.0.27.tgz sudo cp cuda/include/* /usr/local/cuda-11.2/include/ sudo cp cuda/lib64/* /usr/local/cuda-11.2/lib64/ sudo chmod a+r /usr/local/cuda-11.2/include/cudnn.h sudo chmod a+r /usr/local/cuda-11.2/lib64/libcudnn* ``` --- #### **4. 验证安装** - **验证CUDA** 编译并运行CUDA示例程序: ```bash cd /usr/local/cuda-11.2/samples/1_Utilities/deviceQuery sudo make ./deviceQuery ``` 输出`Result = PASS`表示成功[^1]。 - **验证cuDNN** 检查cuDNN版本: ```bash cat /usr/local/cuda-11.2/include/cudnn_version.h | grep CUDNN_MAJOR -A 2 ``` 若显示版本号(如`8.4.0`),则配置成功[^3]。 --- #### **5. 多版本CUDA切换** - **修改软链接** 若安装多版本CUDA(如`11.2``10.1`),通过更新软链接切换版本: ```bash sudo rm -rf /usr/local/cuda sudo ln -s /usr/local/cuda-11.2 /usr/local/cuda ``` - **环境变量控制** 在`.bashrc`中动态调整`PATH``LD_LIBRARY_PATH`指向目标版本。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值