ubuntu下安装cuda、cudnn、显卡驱动这三兄弟,虽然装过很多次了,但很多时候还是要费一些心思。这里尽量把所有的情况都列举一下。
1、版本选择问题。
这个问题要根据你是实际情况来。
(1)要使用哪些平台或者工具,如:pytorch、libtorch、faiss、darknet、tensorrt等,如果这些东西你要在环境配完之后还要延续之前安装or编译的,那么,要注意之前依赖的cuda版本是哪一个大版本的(如11.* or 12.*),新的cuda版本要在相同大版本内,否则会出现缺少依赖。
(2)如果要用pytorch、libtorch,看一下你要安装的版本,可以选个对应的cuda版本,虽然如果版本不同大概率也不会出啥大问题,但多一事不如少一事。我习惯安装12.1cuda
(3)cuda版本选好之后,根据这个版本确定cudnn的版本,显卡驱动的版本。
2、安装方式
cudnn没啥说的,不管是deb还是lib的方式,都不会出什么大问题,只要操作没问题。具体怎么操作网上有很多教程。重点说cuda和显卡驱动的方式
(1)cuda的安装方式:
a、官网
--下载本地.run文件进行安装,这个安装包中有包含显卡驱动,省得在单独安装显卡驱动了。这个方法是我以前最喜欢使用的。为什么现在不喜欢了呢。因为,这种手动安装,在系统中的注册机制做的不好,如果后续要装一些tensorrt之类的东西,有概率安装不成功。
--在线安装,这个方法可以保证后续安装其他需要依赖cuda的软件平台大概率不会出问题,但麻烦就在,我们需要单独安装显卡驱动。
b、其他
讲安装显卡驱动的时候说
(2)显卡驱动的安装方式
a、官网下载安装包。这个方法比较恶心,有概率会出现实际显卡驱动版本与内核注册的显卡驱动版本不匹配的问题,有的人重启电脑会好,但也有概率不行。
b、安装cuda 本地run包的时候可以一起装,目前没遇到过大问题。
c、ubuntu setting中自带的显卡安装
d、命令行sudo apt-get install nvidia-driver-版本号,这个安装方式最讨厌,他会自动把你之前安装好的cuda给干掉,安装成他自己的。如果这样正和你意愿,这也是个不错的安装cuda方法。
3、其他安装时的问题
(1)最常见的,(cuda安装包,显卡驱动包安装)安装显卡时出现nvidia-drm nvidia-modeset正在使用等问题。
a、nvidia-drm
输入:
sudo systemctl isolate multi-user.target
此时退出桌面,进入终端模式,登录后继续输入:
sudo modprobe -r nvidia-drm
完成后在这个终端模式,继续安装显卡驱动
b、nvidia-modeset
创建文件 /etc/modprobe.d/blacklist-nouveau.conf
添加内容:
blacklist nouveau
options nouveau modeset=0
保存后sudo update-initramfs -u
重启
4、其他
(1)推荐一个ubuntu下的工具 sudo apt-get install mlocate
这个工具是本地搜索软件,我们安装完软件之后,往往找不到安装的位置,使用find又比较繁琐。这个命令直接:locate + 名字 就可以。只要注意,安装完要搜索的软件之后sudo updatedb 更新一下再执行搜索。这样找到安装配置之后,不管是添加环境变量还是ld.so.conf添加路径,都很方便