1660ti显卡、ubuntu16.04中安装显卡驱动,cuda, cudnn
ubutntu16.04 1660ti cuda cudnn安装环境说明Ubuntu安装显卡驱动安装主要代码cuda9.0安装小结:cudnn安装后续1小结:后续2环境说明项目版本linuxubuntu16.04gpuNVIDIA 1660ticpuIntel i5-9400F显卡驱动430.64cuda9.0cudnncudnn-...
环境说明
项目 | 版本 |
---|---|
linux | ubuntu16.04 |
gpu | NVIDIA 1660ti |
cpu | Intel i5-9400F |
显卡驱动 | 430.64 |
cuda | 9.0 |
cudnn | cudnn-9.0-**-v7 |
tensorflow-gpu | 1.8.* |
Ubuntu安装
台式256G固态硬盘,265G机械硬盘。windows系统装在固态硬盘上,剩余100G固态空间。具体磁盘分配为:
具体分区 | 大小 | 类型 | 位置 |
---|---|---|---|
/boot | 200M | 逻辑分区 | 固态硬盘 |
efi | 100M | 主分区 | 固态硬盘 |
swap | 4000M | 逻辑分区 | 固态硬盘 |
/ | 剩余 | 逻辑分区 | 固态硬盘 |
home | 265G | 逻辑分区 | 机械硬盘 |
台式机装Ubuntu rufus刻录选择的方式是gpt,笔记本选择mbr
显卡驱动安装
第一次装的显卡驱动是418的驱动,参考这个博文418显卡驱动,后来cuda出现问题更新到最新的显卡驱动,当前的显卡驱动是430.64。查询自己显卡对应的驱动及下载地址,我的1660ti官方推荐的显卡驱动见下图
紧着着参考Azie装显卡驱动在ubuntu中装显卡驱动
装完驱动,输入nvidia-smi可以出现显卡的信息就说明装成功啦!
NVIDIA下载驱动的链接
主要代码
提前下载好显卡的驱动文件
检测内核文件
sudo apt-get install linux-headers-$(uname -r)
禁止第三方启动
sudo gedit /etc/modprobe.d/blacklist.conf
最后加上两行内容
blacklist nouveau
options nouveau modeset=0
更新内核
sudo update-initramfs -u
重启(reboot)
检查是否成功
lsmod | grep nouvea
如果没有输出,则表示成功
接着进入终端(Ctrl+Alt+F2),登录然后,安装驱动
注意安装的时候有一个x-config选项选择no
sudo service lightdm stop
sudo bash NVIDIA-Linux-x86_64-xxx.xx.run -no-opengl-files #进入自己下载的驱动目录.xconfig 选择no,参考官网提示
sudo service lightdm start
nvidia-smi查看安装是否成功
cuda9.0安装
由于自己的程序是要求较低版本的tensorflow,而cuda10.0是针对tensorflow13.0以及之后的版本,故安装cuda9.0
cuda的安装方式有很多,官网提供的方式,包括runfile,deb(local), deb(network),自己几种方式都尝试,没有一种成功,可能某些操作没有注意到,cuda9.0官网下载。自己采用的方式是:
在官方上复制下载链接,采用迅雷下载。copy到Linux安装,结果安装失败。采用google浏览器下载后安装,也是安装失败,提示安装包损坏?安装完成就是不会出现样例。之后安装了一个9.2版本的,样例测试通过,tf导入不进去。,提示找不到cuda.so.9.0找不到。最后很无奈,将ubuntu的源切换回去(下载采用的是中科大的源),按照官网的提示安装,速度巨慢,以下这个表
之前未注意到后面的Purpose,直接sudo apt-get install cuda-9-0,同时将显卡驱动安装成了384,安装完cuda,自己将显卡驱动又切换会430(老是担心显卡驱动有问题),所以这里可以直接根据后者的提示sudo apt-get install cuda-toolkit-9-0,不在安装显卡驱动。安装完成后,注意要在/.bashrc中添加
export CUDA_HOME=/usr/local/cuda 否则tensorflow找不到cuda的安装位置,同样回报错
小结:
- 先自己装显卡驱动
- 推荐按照官网提示安装cuda(而不是自己下载包安装),选择不按照驱动的指令sudo apt-get install cuda-toolkit-9-0.cuda9.0官方安装文档
- 安装的时候切换Ubuntu的源,慢也忍者吧,采用其他源提示安装包损坏
- 安装cuda结束添加export CUDA_HOME=/usr/local/cuda至/.bashrc
- 以上只是个人经验,仅供参考,不喜轻喷
cudnn安装
根据豆角二的帖子,cudnn安装较低版本的,开始我和他选择一样的版本,后来选择了更低的版本cudnn-9.0-linux-x64-v7.tfz,cudnn下载地址删除之前的cudnn需要将移除cuda/include/cudnn.h /usr/local/cuda/include/ cuda/lib64/libcudnn* ,然后再一次解压该文件,拷贝相关文件.
安装完这一切,应该是差不多了。conda中创建一个新的环境,导入tensorflow目测没问题。
后续1
非常开心的测试了一个程序,结果还是提示错误,出现了这个错误failed call to cuInit: CUDA_ERROR_UNKNOWN。
参考链接sudo apt-get install nvidia-modprobe
.
重启完成,这个问题解决
载入数据报告错误,具体错误为Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
具体原因是tensorflow具体版本过高,后来通过
pip install tensorflow-gpu==
查询具体可以安装的tf版本,安装1.8即可。
然后测试,就没有问题~
小结:
- cudnn版本不对应,有可能可以导入tf成功,但是却不能使用gpu加速,所以选择正确的cudnn版本也很重要
- sudo apt-get install nvidia-modprobe解决failed call to cuInit: CUDA_ERROR_UNKNOWN
- 降低tf的版本解决“Failed to get convolution algorithm…”错误。通过**pip install tensorflow-gpu==**查询当前可以安装的tf版本
后续2
gpu温度过高,而风扇却只有50%,经过一下步骤将风扇更改为手动nvidia-settings -a "[gpu:0]/GPUFanControlState=1"
启动手动调转速
sudo gedit /etc/X11/xorg.conf
调节Option选项
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 570"
Option "NoLogo" "True"
Option "Coolbits" "4"
EndSection
重启,打开nvidia-settings,观察thermal Settings中有无Enable GPU Fan Settings,选择对应的速度Apply
【参考文档】
安装显卡驱动、cuda、cudnn
ubutn 1660各版本
英伟达显卡驱动查询及下载
cuda下载地址
cudnn下载地址(需要注册)
cuda9.0官方安装文档
cuda10.0官方安装文档
支持加速的gpu以及各gpu算力
failed call to cuInit: CUDA_ERROR_UNKNOWN解决方案
gpu风扇自定义转速1
gpu风扇自定义转速2

欢迎来到由智源人工智能研究院发起的Triton中文社区,这里是一个汇聚了AI开发者、数据科学家、机器学习爱好者以及业界专家的活力平台。我们致力于成为业内领先的Triton技术交流与应用分享的殿堂,为推动人工智能技术的普及与深化应用贡献力量。
更多推荐
所有评论(0)