目录

1.cuda的安装

1.1 最简单的方法——分开安装驱动和cuda

1.2 更万能的方法——同时安装驱动和cuda

1.3  终极杀手锏

2.cudnn的安装


安装之前首先要确认你需要安装的cuda和cudnn的版本,假如你后续还需要安装tensorflow的话,请看我的另外一篇博客,确认你需要的版本。

查看流程如下:

  1. 打开控制面板
  2. 硬件和声音
  3. NVDIA控制面板
  4. 帮助 -> 系统信息
  5. 查看支持的CUDA版本号

总结:
上述栗子,支持的CUDA版本号为10.1.152。

1.cuda的安装

cuda的安装比较费事,本人花了四天时间查看了各种博客和官网教程才安装成功。下面的3种方法都是实际测试过的方法,可以成功安装cuda8.0和cuda9.0。

(1)下载安装文件。首先去英伟达官网下载cuda安装包:https://developer.nvidia.com/cuda-toolkit-archive

按照系统配置选择安装包,据说用deb文件安装容易出错,所以直接下载runfile(后缀为.run)文件来安装,例如我想安装cuda9.0,且我的操作系统为Ubuntu16.04,所以我按照下图选择安装包:

(2)安装cuda。cuda8.0和cuda9.0都集成了nvidia显卡驱动,按照安装cuda的同时是否安装显卡驱动可以分为不带驱动的安装方法和带驱动的安装方法。下面有三种方法,第一种如果搞不定就试试第二种,第二种如果还搞不定,那就看第三种。可能比较高端的显卡(比如1080Ti、泰坦)直接用第一种方法就能搞定,而比较差的显卡就需要第二种甚至第三种方法才行,本人的显卡非常垃圾,用第三种方法才安装成功。

1.1 最简单的方法——分开安装驱动和cuda

(1)更新系统的驱动。

系统设置-》软件和更新-》附加驱动-》更新nvidia和intel

假如更新驱动出现了循环登录系统的问题,请先卸载驱动,然后使用带驱动的安装方法来解决问题(万能药)。

此时驱动的卸载方法:由于登陆进入不到图形用户界面(GUI),但我们可以进入到文本用户界面(TUI)

在登陆界面状态下,按Ctrl + Alt + f1,进入TUI执行

sudo /usr/bin/nvidia-uninstall

然后重启

sudo reboot

(2)安装cuda。

执行如下命令:

sudo sh cuda_9.0.176_384.81_linux.run

然后用一本书的书角压住回车键,直到服务条款显示到100%。接着按下面的步骤选择:

accept

n(不要安装driver)

y

y

y

安装完成后,设置环境变量。

 (3)设置环境变量。

打开主目录下的 .bashrc文件添加如下路径,例如我的.bashrc文件在/home/wangyuanwei下,如果没有找到,则按Ctrl+H键显示隐藏文件。

 
  1. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-9.0/lib64

  2. export PATH=$PATH:/usr/local/cuda-9.0/bin

  3. export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-9.0

终端运行:source ~/.bashrc

检查:nvcc --version,如果显示下面的文子就说明安装成功了。

1.2 更万能的方法——同时安装驱动和cuda

这种安装方法不需要在安装cuda之前安装显卡驱动,但是安装方法比较复杂,如果前一种方法安装不成功的话可以参考这个方法。

具体步骤可以参考该链接:https://blog.csdn.net/qlulibin/article/details/78714596

1.3  终极杀手锏

假如前面两种方法都没有解决问题的话,可以继续看这种方法。其实这也不算是一种方法,这只是对第二种方法的要点强调而已。

其实cuda安装不上的根本原因都是没有仔细看官网的安装指导,在下载cuda安装文件的时候,在那个界面的最下方有一个安装指导书( Installation Guide for Linux),按照官网的指导应该是可以正确安装的。

这里提一个注意点:大多数人没有安装成功就是因为系统不满足要求,下图是cuda9.0的系统需求:

就本人的亲身经验,这个表里面最有用的信息就是系统内核的版本 绝大部分人安装不上cuda可能就是系统内核的版本过高,cuda要求系统内核是4.4,而我们的系统大多是4.13,降低系统内核后,问题一般就解决了。

降低系统内核的方法就是直接用新内核替换旧内核,具体方法请参考百度经验(亲测有效,就是开机的时候会出现一些警告信息,不用搭理就好了):https://jingyan.baidu.com/article/5552ef47fe57b6518ffbc991.html

降低系统内核后再试试方法1或者方法2应该就能解决问题。如果还不能解决问题,建议耐心的阅读官网的安装指导书。

2.cudnn的安装

cudnn的安装非常简单,

(1)下载安装文件

按需求下载cudnn的安装文件:https://developer.nvidia.com/rdp/cudnn-archive

(2)安装cudnn

解压下载的文件,可以看到cuda文件夹,在当前目录打开终端,执行如下命令:

 
  1. sudo cp cuda/include/cudnn.h /usr/local/cuda/include/

  2. sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/

  3. sudo chmod a+r /usr/local/cuda/include/cudnn.h

  4. sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

(3)查看cudnn版本

在终端输入

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

如果出现下图所示版本信息,说明安装成功。

更多资讯或疑问内容请关注 微信公众号 “让梦飞起来” 或添加小编微信, 后台回复 “Python” ,领取更多资料哦

 ​                     ​

Ubuntu16.04下安装cuda和cudnn的三种方法(亲测全部有效)相关推荐

  1. ubuntu16.04下安装openssh-server报依赖错误的解决方法

    ubuntu16.04下安装openssh-server报依赖错误的解决方法 参考文章: (1)ubuntu16.04下安装openssh-server报依赖错误的解决方法 (2)https://ww ...

  2. Ubuntu 16.04 下安装VMware Tools(三行命令搞定,亲测好使)

    Ubuntu 16.04 下安装VMware Tools(三行命令搞定,亲测好使): 第一行命令:sudo apt-get upgrate 第二行命令:sudo apt-get install ope ...

  3. Ubuntu16.04下安装tensorflow(CPU)spyder+pycharm

    1.下载并安装Anaconda 1.1 下载 从Anaconda官网(https://www.continuum.io/downloads)上下载Linux版本 https://repo.contin ...

  4. ubuntu16.04 下安装Opencv2.4.9

    ubuntu16.04 下安装Opencv2.4.9 OpenCV的源码download from:  https://sourceforge.net/projects/opencvlibrary/? ...

  5. wepe 装linux ubuntu,Ubuntu16.04下安装Wechat的实现方法

    Ubuntu16.04下安装Wechat 很久没写博客了,前两天电脑因为teamviewer不了,原因显示是libqt5gui5版本过低,研究了一波更新,卸载了libqt5gui5,和它的依赖qtba ...

  6. Ubuntu16.04下安装有道翻译

    Ubuntu16.04下安装有道翻译 参考: https://www.cnblogs.com/pursuiting/p/6194682.html 下载并安装3个依赖包 下载并安装有道词典 下载并安装3 ...

  7. 在Ubuntu16.04下安装caffe2

    目录 1.使用conda安装(anaconda,miniconda) 2.使用conda build安装 3.使用conda并且从源码安装(本人亲测,可以安装caffe2,并且可以安装Detectro ...

  8. Ubuntu16.04 下安装 Teamviewer 远程控制软件

    TeamViewer软件介绍: TeamViewer是一个能在任何防火墙和NAT代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上 ...

  9. ubuntu16.04下安装企业微信和微信(实测能用)

    ubuntu16.04下安装企业微信和微信(实测能用) 安装deepin 安装企业微信 安装微信 安装deepin 第一步: git clone https://gitee.com/wszqkzqk/ ...

最新文章

  1. leetcode day4
  2. python autoreload
  3. linux控制编译so 位数,Linux下解决64位下Apache编译模块时/usr/lib/libexpat.so问题
  4. linux fb应用例子,Linux下利用framebuffer画点的程序小例子
  5. 微软超级麻将AI Suphx论文发布,研发团队深度揭秘技术细节
  6. layui引入php项目,怎么将layui引入开发框架中
  7. ROS中阶笔记(四):机器人仿真—Gazebo物理仿真环境搭建(重点)
  8. CentOS 6.5 + Nginx 1.8.0 + PHP 5.6(with PHP-FPM) 负载均衡源码安装 之 (三)Nginx负载均衡配置...
  9. 「leetcode」135.分发糖果【贪心算法】详细图解
  10. Python下载文件到本地
  11. python连接阿里云数据库_Python连接MySQL数据库教程演示
  12. 小伙用C++搞定远程桌面监控系统,轻松拿下12家offer!
  13. PS后期一键调出紫色梦幻红外线照片效果
  14. 亚马逊防关联方法适合shopee平台吗?
  15. Nginx 405 not allowed
  16. 深入理解golang框架Gin(一)---->Gin简介以及安装使用
  17. 如何压缩动态图片大小?gif图太大了怎么压缩?
  18. 搜狗的2019年:录音笔开辟智能硬件新战场,语言AI要在C端找准点
  19. java doc转换docx_JAVA - 将doc文档转为docx文档
  20. Android 3D滑动菜单完全解析,实现推拉门式的立体特效

热门文章

  1. 整数数组按绝对值排序
  2. [译] 想帮助用户做决定?你的APP可以这样设计!
  3. 为什么公司要努力发展数字化战略
  4. Spring的两种任务调度Scheduled和Async
  5. 《软件定义数据中心:Windows Server SDDC技术与实践》——导读
  6. 关于HTML5标签不兼容(IE6~8)
  7. Android 基本测试工具的使用
  8. 【吼吼睡cocos2d学习笔记】第四章 - 第一个游戏
  9. CSV文件的转义处理
  10. 防抓包重放php,超简单最基本的WEB抓包改包重放的方法