在AlmaLinux9.4中安装CUDA
前言
这一天天的太容易崩溃了。于是就干脆从什么都没有一步步来,这样起码知道是在哪里崩了。
安装minimal AlmaLinux
可能会有人觉得我疯了。但是很不幸的是,我没疯。这么做不为别的,就为了能够不去处理各种依赖问题。
这个步骤我就不再重复了。
安装NVIDIA
从minimal
版本开始,我们需要从什么都没有的版本开始。
基础环境
首先就是没有安装环境,这个倒还好说:
1 | $ sudo yum clean all |
也不管这些有没有用,反正以后肯定会用。
有了这些,我们就可以尝试一下安装脚本了。
内核头文件
当然,毕竟是minimal
,这点东西肯定不够。如果直接执行NVIDIA
安装脚本的时候肯定会报错:
ERROR: Unable to find the kernel source tree for the currently running kernel.
继续(参考这篇文章):
1 | $ sudo yum install kernel-devel kernel-headers -y |
NVIDIA驱动
有了gcc
与内核,我们就能直接开始安装驱动了。这个驱动并不是CUDA
的驱动,而是NVIDIA
的驱动,也就是说,能够让你800x600的分辨率上升到显示屏能够承受的极限;能够让你的代码能够通过nvidia-smi
连接到显卡设备。
我们先下载驱动:
1 | $ wget https://cn.download.nvidia.cn/XFree86/Linux-x86_64/555.42.02/NVIDIA-Linux-x86_64-555.42.02.run |
接下来,都需要将桌面进程(X进程)挂起或者关闭,驱动才能够正常安装。所以,如果是桌面版系统,先logout
,然后按下CTRL
+ALT
+F2
,就能够进入命令行模式,在这里,直接粗暴地关闭X
进程:
1 | $ sudo pkill Xorg |
有些教程会让你优先处理nouveau
驱动,无所谓,现在这么先进了,已经很方便了。
如果你不想操作,直接执行:
1 | $ ./NVIDIA-Linux-x86_64-555.42.02.run |
第一次执行的时候,NVIDIA
驱动自己会生成一个禁用nouveau
驱动的配置文件,并提示nouveau
驱动未被禁用,询问是否停止安装。
这个时候选择停止安装,然后就重构:
1 | $ sudo dracut --force # Centos、AlmaLinux等系统 |
nouveau
驱动就会被禁用。然后,重新安装NVIDIA
驱动。这个时候就会顺利成功。
而如果你希望提前做好准备,直接一步安装成功,那也可以按照网络中很常见的禁用方法执行。总之,这一步之后,NVIDIA
驱动就这么结束了。
最后,检查一下:
1 | $ nvidia-smi |
conda
当然,怎么会忘了conda
呢。但是我们不再使用Anaconda
这种累赘的东西,我们直接用Miniconda
,尽可能减少服务器负载:
1 | $ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh |
安装过程没有什么需要注意的点,一路回车加yes
就完事。
安装cuda与cudnn
可能很多人都觉得这个是需要配置的。如果你的电脑能够始终稳定在这个配置下,我觉得没有任何问题。但问题就在,我这台机器相当不稳定。这一天天的经常就崩掉了。
这个步骤我就不再进行了。不安装就不安装吧。直接上conda
:
1 | $ conda create -n pytorch-gpu python=3.7 -y |
这样安装之后,在NVIDIA
安装成功的前提下,你的Pytorch
实际上是能够访问CUDA
与CUDNN
的。检查一下:
1 | python |
没毛病。
就这么用就完事儿了,管他什么配置CUDA
呢。
用户界面
最后的最后,如果闲着没事的话,也可以加一个用户界面。已经有很多人说明了GNOME3
、GNOME2.x
、KDE
、XFCE
、LXDE
等桌面的区别与优缺点,这里就不再赘述了。我在这里选择了XFCE
,其中最关键的其实是可以指定终端背景图片的高可自定义的xfce4-terminal
。
安装过程也比较简单(参考这篇文章):
1 | sudo dnf clean all |