在Linux下安装CUDA
作者:互联网
缘起std::bad_alloc
程序跑到中途抛出异常:
![image-20201225171015964](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220955464-1910337311.png)
按照网上说法,将内存从8G扩大到了32G,无效。仍然抛出该异常。
查看TensorFlow是gpu版本还是cpu版本
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
![image-20201225173439743](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220955955-859898503.png)
发现没用上GPU,一直是CPU在跑。
检查驱动问题
验证显卡驱动是否装好:
nvidia-smi
抛出错误:
![image-20201225171610153](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220956646-1643312361.png)
检查驱动是否安装:
nvcc -V
抛出错误:
![image-20201225171706512](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220956976-2020704655.png)
按照提示指令安装toolkit后:
![image-20201225171807442](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220957296-1434440178.png)
发现驱动存在。
尝试解决nvidia-smi的错误:
首先找到NVIDIA驱动版本:
ls /usr/src | grep nvidia
![image-20201225171944073](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220957576-2107466078.png)
![image-20201225172348539](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220957883-148973456.png)
发现两个驱动的版本有问题。
尝试输入指令:
sudo apt install dkms
sudo dkms install -m nvidia -v 450.80.02
![image-20201225172506386](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220958185-716313323.png)
分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线分割线
安装CUDA
1 检查系统是否有支持 CUDA 编程的 GPU
查看当前系统的 GPU 型号:
lspci | grep -i nvidia
![image-20201225155642769](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220958468-1931455819.png)
可以直接安装 CUDA Toolkit,系统将自动安装与其版本匹配的 NVIDIA Driver
2 安装 CUDA Toolkit
在安装 CUDA Toolkit 前,要确保系统安装了 gcc 和 make。如果希望使用 C++ 进行 CUDA 编程,需要安装 g++。如果想要运行 CUDA 例程序,需要安装相应的依赖库。
sudo apt update # 更新 apt
sudo apt install gcc g++ make # 安装 gcc g++ make
sudo apt install libglu1-mesa libxi-dev libxmu-dev libglu1-mesa-dev freeglut3-dev # 安装依赖库
在 CUDA Toolkit 的下载页面选择系统版本和安装方式,下载并运行 runfile。
![image-20201225160615662](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220958861-396150667.png)
![image-20201225160635618](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220959186-1669004943.png)
下载 CUDA Toolkit
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run
![image-20201225161448651](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220959546-1909331681.png)
安装 CUDA Toolkit
sudo sh cuda_11.1.0_455.23.05_linux.run
安装失败,返回代码是256。log如下:
![image-20201225170742796](https://www.icode9.com/i/l/?n=22&i=blog/2117591/202209/2117591-20220901220959886-372637962.png)
参考文献
1 无法连接NVIDIA驱动:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver
2 Linux NVIDIA显卡驱动安装
3 nvidia-smi 报错:无法与 nvidia driver 通信
4* Linux 下的 CUDA 安装和使用指南
标签:Linux,安装,nvidia,Toolkit,CUDA,NVIDIA,分割线 来源: https://www.cnblogs.com/gangao/p/16648005.html