给linux服务器安装cuda,cudnn以及cupy包,以及重装cuda,cudnn等包

2023年12月7日更新一下

给服务器安装cuda工具包以及cuDnn库,以及cupy包的安装

这篇文章也很好,也可以参考

https://blog.csdn.net/qq_33200967/article/details/80689543

(如果要卸载原有显卡驱动和cuda,请看下一章节)

参考文章:

https://blog.csdn.net/weixin_43677710/article/details/131813795?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-131813795-blog-112294463.235%5Ev38%5Epc_relevant_sort&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-131813795-blog-112294463.235%5Ev38%5Epc_relevant_sort&utm_relevant_index=2

安装之前先输入nvidia-smi看支持的cuda的版本,再决定安装多少版本的cudatoolkit,工具包的版本要低于显卡驱动最高可以支持的版本

https://developer.nvidia.com/cuda-downloads,如果不想下载到本机再上传到服务器,可以用wget命令,有时因为外网所以可能连不上,wget后可以加个–no-proxy

再继续看安装什么版本的cudnn库https://developer.nvidia.com/rdp/cudnn-archive

安装完cudatookit后输入nvcc --version看有无输出,有的话代表安装好了,没有的话就去bashrc修改环境变量

类似如下

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

export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64KaTeX parse error: Expected '}', got 'EOF' at end of input: …LIBRARY_PATH:+:{LD_LIBRARY_PATH}}

cudnn库安装时需要先解压

tar -xf cudnn-linux-x86_64-8.8.0.121_cuda11-archive.tar.xz

解压后,需要将 cuDNN 文件复制到 CUDA 安装目录中。通常,CUDA 的安装路径为 /usr/local/cuda/。您可以使用以下命令将文件复制到正确的位置:

sudo cp 上一步解压出的包名/include/cudnn*.h /usr/local/cuda(或者cuda-加版本号)/include
sudo cp 上一步解压出的包名/lib64/libcudnn* /usr/local/cuda(或者cuda-加版本号)/lib64

设置文件权限(可选): 可以为复制的文件设置适当的文件权限,以确保它们可以被读取和执行。使用 chmod 命令来设置文件权限。例如:

sudo chmod a+r /usr/local/cuda/include/cudnn*.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

然后来该网站找匹配cuda版本的cupy包

https://pypi.org/search/?q=cupy&page=1

默认命令pip install cupy会卡住,卡很久都安装不上

如果要更新显卡驱动和卸载原有cuda

1.首先要卸载之前低版本的驱动

在终端输入:sudo apt-get purge nvidia*

然后输入:nvidia-smi

如果没有信息显示,说明卸载成功。进行下一步。

2.在https://www.nvidia.cn/Download/Find.aspx?lang=cn&QNF=1 上根据显卡型号下载驱动
然后在下载目录下打开终端输入:

sudo sh NVIDIA-Linux-XX.run

先关闭xserver,否则可能安装失败
systemctl stop gdm.service

安装完毕后,来启动X Server.
systemctl start gdm.service

我这遇到一个报错

An NVIDIA kernel module ‘nvidia-uvm’ appears to already be loaded in your kernel. This may be because it is in use

sudo service lightdm stop
sudo stop nvidia-digits-server
sudo service docker stop
sudo rmmod nvidia-uvm

sudo lsof -n -w /dev/nvidia*
sudo kill -9 PID

上面kill 进程时把查出来的进程都kill掉

sudo sh cuda_12.1.1_530.30.02_linux.run

现在提示旧的包管理器还在

提示如下:

Existing package manager installation of the driver found. It is strongly │ │ recommended that you remove this before continuing

执行

sudo apt-get --purge remove "*cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" \
 "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*"

sudo apt-get autoremove

sudo apt-get autoremove 是一个用于在 Ubuntu 或基于 Debian 的 Linux 系统中自动删除不再需要的软件包和其相关依赖的命令。

当您使用 apt-get 命令安装软件包时,它会自动解决软件包的依赖关系并安装所需的其他软件包。然而,有时候您可能会卸载某个软件包,而它的依赖关系仍然保留在系统中。

autoremove 命令用于检查系统中不再需要的软件包和其相关依赖,并将其自动删除。这些不再需要的软件包通常是由于您卸载了某个软件包,但其依赖关系仍然存在,或者您更新了软件包,导致旧版本的依赖关系不再需要。

通过运行 sudo apt-get autoremove 命令,系统会分析并删除无用的软件包和依赖关系,以释放磁盘空间并保持系统的整洁。

请注意,使用 autoremove 命令时要谨慎,确保您知道将被删除的软件包和其相关依赖关系,以免意外删除了其他需要的软件包。

安装时取消这个选项

在这里插入图片描述

安装后提示如下:要设置环境变量

Please make sure that

  • PATH includes /usr/local/cuda-12.1/bin
  • LD_LIBRARY_PATH includes /usr/local/cuda-12.1/lib64, or, add /usr/local/cuda-12.1/lib64 to /etc/ld.so.conf and run ldconfig as root

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

export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64KaTeX parse error: Expected '}', got 'EOF' at end of input: …LIBRARY_PATH:+:{LD_LIBRARY_PATH}}

然后source更新即可

-------------------分割线-------------------------
以下是以前写的版本,删着可惜,留着吧

以下为简略版本,可参考思路
需要用到的网址:
https://developer.nvidia.com/cuda-downloads
https://developer.nvidia.com/rdp/cudnn-archive

安装之前先输入nvidia-smi看硬件cuda的版本,再决定安装多少版本的cudatoolkit,再继续看安装什么版本的cudnn库

安装完cudatookit后输入nvcc --version看有无输出,有的话代表安装好了,没有的话就去bashrc修改环境变量

cudnn库安装时需要执行

tar -xf cudnn-linux-x86_64-8.8.0.121_cuda11-archive.tar.xz

解压后,需要将 cuDNN 文件复制到 CUDA 安装目录中。通常,CUDA 的安装路径为 /usr/local/cuda/。您可以使用以下命令将文件复制到正确的位置:

sudo cp 上一步解压出的包名/include/cudnn*.h /usr/local/cuda/include
sudo cp 上一步解压出的包名/lib64/libcudnn* /usr/local/cuda/lib64

设置文件权限(可选): 可以为复制的文件设置适当的文件权限,以确保它们可以被读取和执行。使用 chmod 命令来设置文件权限。例如:

sudo chmod a+r /usr/local/cuda/include/cudnn*.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

默认命令pip install cupy会卡住,卡很久都安装不上,所以放弃这种方法
来该网站找匹配cuda版本的cupy包以及对应命令
https://pypi.org/search/?q=cupy&page=1

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值