1、查看电脑显卡版本
查看命令:
lspci | grep -i vga
进入网址:http://pci-ids.ucw.cz/mods/PC/10de?actinotallow=help?help=pci 输入2188查询显卡版本。
查询到此电脑的显卡是GeForce GTX 1650。
2、下载、安装显卡驱动
1) 进入NVIDIA官网下载显卡驱动:https://www.nvidia.cn/Download/index.aspx?lang=cn
2)安装显卡驱动
2.1 给驱动文件添加权限:
chmod +x NVIDIA-Linux-x86_64-470.103.01.run
2.2 执行安装:
sudo ./NVIDIA-Linux-x86_64-470.63.01.run -no-x-check -no-nouveau-check -no-opengl-files
一直按回车,有error解决error
出现error:
解决方案:参考
关掉nouveau 服务:
sudo vim /etc/modprobe.d/blacklist.conf
添加以下内容
blacklist nouveau
options nouveau modeset=0
更新生效:sudo update-initramfs -u
重启:sudo reboot
问题2:
大概意思就是说kernel是gcc-7.5构建的,但是编译驱动gcc是9.4.5,不兼容。
解决方案:
1) 下载gcc-7 和 g+±7
sudo apt-get install gcc-7 g++-7
2)把gcc-7加入到gcc表中
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 10 --slave /usr/bin/g++ g++ /usr/bin/g++-7
以上,10代表的是优先级数值,–slave能保证gcc与g++保持相同版本。
3) 使用命令设置gcc版本:
sudo update-alternatives --config gcc
4) 验证是否修改成功
gcc --version
g++ --version
5) 删除某个gcc版本的选项的话,可以使用
sudo update-alternatives --remove gcc /usr/bin/gcc*
问题3:出现无法安装兼容32位的库
出现无法安装32位兼容库(Unable to find a suitable destination to install 32-bit compatibility libraries.),由于系统是64位系统,因此应该是无关紧要的,继续即可。
问题4:yes
2.3、安装完成后sudo reboot重启电脑,设置生效
2.4、输入nvidia-smi 如果有显卡信息输出代表驱动安装完成。
3、安装cuda11.4
3.1. 下载cuda版本:https://developer.nvidia.com/cuda-toolkit-archive
3.2. 选择11.4.1版本,下载deb(local)版本
命令安装:
$wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
$sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
$wget https://developer.download.nvidia.com/compute/cuda/11.4.1/local_installers/cuda-repo-ubuntu1804-11-4-local_11.4.1-470.57.02-1_amd64.deb
$sudo dpkg -i cuda-repo-ubuntu1804-11-4-local_11.4.1-470.57.02-1_amd64.deb
$sudo apt-key add /var/cuda-repo-ubuntu1804-11-4-local/7fa2af80.pub
$sudo apt-get update
$sudo apt-get -y install cuda
运行 sudo apt-get -y install cuda出现错误:
问题直接原因应为/swap分区的UUID被修改后而没有加入RESUME file
解决方法:
1) 首先使用如下命令打印/swap分区的UUID号,比对一下确认和上面的系统打印输出一致,锁定为该问题
blkid | awk -F\" '/swap/ {print $2}'
2)然后使用如下命令写入/swap分区的UUID号
printf "RESUME=UUID=$(blkid | awk -F\" '/swap/ {print $2}')\n" | sudo tee /etc/initramfs-tools/conf.d/resume
3) 最后更新内核文件
sudo update-initramfs -u
3.3 配置环境
$echo 'export PATH=/usr/local/cuda-10.0/bin/:$PATH'>>~/.bashrc
$echo 'export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH'>>/.bashrc
$source ~/.bashrc
3.4 验证cuda安装完成
nvcc -V