0


linux用户下更换cuda版本及部分细节

linux用户下更换cuda版本及部分细节

安装cuda

进入cuda版本选择页面选择对应版本,这里以cuda11.3.0为例,选择对应的系统信息,选择runfile(local)

1.运行代码进行下载

wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run


2.运行安装代码

sudosh cuda_11.3.0_465.19.01_linux.run

输入accept

取消第一个Driver部分的安装,方向键上下进行选择,回车键勾选或取消,取消原因参考文章,选择Install回车键进行安装

由于目的是安装其他版本的cuda,不需要创建软连接,这里选择No

安装cuDNN

cuDNN并不是一定要装的,了解细节可以参考文章及这篇文章
1.进入官网选择刚刚装的cuda所对应合适版本进行下载
2.下载完成后输入命令

sudocp cuda/include/cudnn.h /usr/local/cuda-11.3/include/
sudocp cuda/lib64/libcudnn* /usr/local/cuda-11.3/lib64/
sudochmod a+r /usr/local/cuda-11.3/include/cudnn.h
sudochmod a+r /usr/local/cuda-11.3/lib64/libcudnn*

部分命令解释:
(1)

sudo cp cuda/include/cudnn.h /usr/local/cuda-11.3/include/

这个命令作用是将 cuda/include/cudnn.h 文件复制到 /usr/local/cuda-11.3/include/ 目录下,并在复制过程中使用管理员权限。
sudo:以超级用户(管理员)权限执行命令。在执行需要管理员权限的操作时,需要使用 sudo 来获取足够的权限。

cp:是复制文件的命令。

cuda/include/cudnn.h:这是源文件的路径,即要复制的 cudnn.h 文件所在的路径。

/usr/local/cuda-11.3/include/:这是目标目录的路径,即要将文件复制到的目标目录。
(2)

sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h

这个命令是用来修改文件的权限,让所有用户(包括文件的所有者、所属组和其他用户)都可以读取/usr/local/cuda-11.3/include/cudnn.h文件
sudo:以超级用户(管理员)权限执行命令。在执行需要管理员权限的操作时,需要使用sudo来获取足够的权限。

chmod:用于修改文件权限的命令。

a:表示"all",即所有用户。

+r:添加读取权限。r表示读取权限,+表示添加权限。

/usr/local/cuda-11.3/include/cudnn.h:这是目标文件的路径,即cudnn.h文件所在的路径。

可能产生的问题
将cuDNN中的文件进行复制替换,有时会找不到文件,那么则有可能是以软连接方式存在的,参考文章指向/usr/local/cuda-11.3/targets/x86_64-linux/include/,那么输入正确的位置进行替换,注意前面cuDNN所在的位置也要正确。

更换cuda版本

输入

nvcc-V

可以查看当前的cuda版本,我这里是11.1

更换的方法有很多种,可以通过直接修改环境变量,创建更换脚本等方式进行更换,这里为不影响服务器上其他用户选择在.bashrc中进行更换。

exportLD_LIBRARY_PATH=LD_LIBRARY_PATH:/usr/local/cuda-11.3/lib64
exportPATH=/usr/local/cuda-11.3/bin:$PATHexportCUDA_HOME=CUDA_HOME:/usr/local/cuda-11.3

将上述代码添加进.bashrc中并保存,输入

source ~/.bashrc

运行文件,再次输入

nvcc -V

查看版本,可以看到到此cuda版本已经更改完成。
在这里插入图片描述
部分命令解释
(1)

export PATH=/usr/local/cuda-11.3/bin:$PATH

这个命令用于设置环境变量 PATH,将 CUDA 的可执行文件路径添加到现有的 PATH 环境变量中
export:用于将变量设置为环境变量,这样它可以在当前会话和子进程中传递给其他程序。

PATH:是一个特殊的环境变量,用于指定系统在哪些目录中查找可执行文件。各个目录之间用冒号 : 分隔。

/usr/local/cuda-11.3/bin:这是 CUDA 安装的路径中的 bin 目录,包含了 CUDA 的可执行文件,如 nvcc(NVIDIA CUDA Compiler)等。

$PATH

这里的

$PATH

表示当前 PATH 环境变量的值。通过将 /usr/local/cuda-11.3/bin 添加到 PATH中,即将 CUDA 可执行文件的路径添加到已有的搜索路径中。
$:加 $ 符号时会在原有的 PATH 环境变量的基础上进行扩展,而不加 $ 符号时会完全替换原有的 PATH 环境变量。

通过执行这个命令,系统会在 /usr/local/cuda-11.3/bin 目录中查找可执行文件,如果找到匹配的可执行文件,就可以在任何地方直接运行该可执行文件,而不需要指定完整路径,这里将

$PATH

放在后面的原因是参考文章,可以将cuda-11.3的路径放在最前面,避免其他版本cuda路径在cuda-11.3前面而优先选择其他版本cuda。输入

env

查看环境变量找到path如下所示


本文转载自: https://blog.csdn.net/qq_44759942/article/details/131784977
版权归原作者 _Keep _Going 所有, 如有侵权,请联系我们删除。

“linux用户下更换cuda版本及部分细节”的评论:

还没有评论