1. 更新apt-get源列表

sudo apt-get update
sudo apt-get upgrade

2. 添加驱动源

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update

3. 安装nvidia驱动

1.正常策略

sudo apt-get install nvidia-
sudo apt-get install mesa-common-dev
sudo apt-get install freeglut3-dev

这一步有超多的坑,如果你足够幸运的话。上面步骤执行完,重启。执行:

sudo lshw -c video|grep configuration

如果显示nvidia字样,就代表驱动装好了。直接进入第4步。如果是nouveau或其他的,那就是没有装好,请看下面。

2.踏坑策略

别问我367是什么东西,据说是显卡版本号什么的,我看到下载时,实际上下载了多个版本,比367更高的有不少。之所以不求甚解,是因为上面的操作据说成功概率很高。可是,我有强迫症,我选择了去官网下载对应我显卡的驱动,手动安装,然后一路掉坑无数,还好最后还是成功了。

2.1 首先,禁用nouveau。

nouveau是系统自带通用驱动,一般是支持你的显卡的,我的gtx1070都支持(那我为什么更新官方驱动呢?可能是有强迫症!其实我是担心不能充分调动我显卡的性能,影响我后面deep learn的数据集训练)。方法是暴力移除:

mv /lib/modules/3.0.0-12-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko /lib/modules/3.0.0-12-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko.bak

重启,再次测试前面正常策略的驱动是否成功。如果成功的话,就走第4步。

2.2 下载官网驱动

获取显卡的硬件信息:

lspci -vnn | grep VGA -A 12

然后拿着型号,去官网下载即可。貌似需要注册个帐号。

2.3 关闭X service

linux各发行版,有个通用的系统运行级别。3为标准的多用户模式,5为X Window模式。可以用runlevel命令来查看当前系统运行level。ubuntu17.10桌面版,默认level是5。我们可以通过telinit命令切换运行模式。

sudo telinit 3

进入命令行模式。如果想进去X Windows的话,把3改为5即可。

2.4 安装

官网下载的文件,后缀应该是bundle。赋执行权限:

sudo chmod +x $name
sudo ./$name

重启。查看驱动。

4. 安装cuda

因为最新版的tensorflow 1.5不支持cuda9.0,这里安装8.0版本。(下面的版本9.0,替换为8.0即可)

下载地址(当然也需要先注册):https://developer.nvidia.com/cuda-toolkit-archive

1. run格式文件

如果下载的是run文件,直接运行即可。

2. deb格式文件

2.1 安装gcc:

sudo apt-get install gcc-5

注意一定要选择好版本,不选择默认装gcc-7,而后面编译时不支持gcc大于6的版本.

我安装时候,第一种方法失效,现在觉得,可能就是gcc版本不支持的缘故。

2.2 安装内核头文件

sudo apt-get install linux-headers-$(uname -r)

2.3 deb安装

sudo dpkg -i cuda-repo-ubuntu1704-9-0-local_9.0.176-1_amd64.deb
sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub <version>部分是自己下载的那个版本,一般在命令行按tab键就能出来;
sudo apt-get update
sudo apt-get install cuda

2.4 添加环境变量

写入到 ~/.bashrc 的尾部:

export PATH=/usr/local/cuda-9.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH

2.5 测试

cuda-install-samples-9.0.sh <dir>  安装测试程序,<dir>是安装目录,自己新建一个即可

安装好后,<dir>下有个NVIDIA_CUDA-9.0_Samples文件夹,cd到这个文件夹里面,执行$sudo make,编译完后,在bin目录或bin目录的子目录的子目录里有编译好的deviceQuery可执行文件,执行这个文件,可以看到下面的输出就说明安装成功了:

如果执行失败,则是显卡驱动没有装好。

最后再来测试一下CUDA,运行:

sudo nvidia-smi

可以看到gpu的各种信息。

5. 安装cudnn

下载:https://developer.nvidia.com/rdp/cudnn-download

tar -xzvf cudnn-9.0-linux-x64-v7.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

 

ubuntu17.10 安装CUDA的更多相关文章

  1. ubuntu17.10安装LAMP并测试部署php探针系统

    ubuntu17.10修改密码以及安装LAMP并部署php探针系统 步骤1:ubuntu17.10配置IP (这个版本配置IP方式改变较大,apt-get upgrade更新至最新以前配置方式也可以用 ...

  2. ubuntu17.10安装lnmp安装包的核心问题-gcc版本、g++版本

    大致碰到的问题都是这样,不是php安装失败,就是MySQL安装失败,或者Nginx也安装失败 基本上是花式报错.后来在军哥的论坛中找到了这个帖子:https://bbs.vpser.net/viewt ...

  3. Ubuntu17.10安装Docker

    Ubuntu环境下安装Docker 1. 系统要求 Docker目前只能运行在64位平台上,并且要求内核版本不低于3.10,实际上内核越新越好,过低的内核版本容易造成功能不稳定. 可以通过如下命令检查 ...

  4. ubuntu-17.10 安装 FANN

      因为想用C语言写神经网络,不用已有的库的话,又太难了,所以准备安装一个夸平台的FANN库, 源文件下载地址http://leenissen.dk/fann/wp/download/,我下载的是最新 ...

  5. ubuntu17.10 安装firefox的flash

    1. flash下载地址:https://get.adobe.com/flashplayer/ 2. 选择tar.gz for linux 3. 下载后解压tar包.里面有个libflashplaye ...

  6. ubuntu17.10 安装ssh

    sudo apt-get install openssh-server sudo /etc/init.d/ssh start

  7. 搭建双系统win10+ubuntu17.10

    0. 序言 这里采用先装win10,再装ubuntu的顺序.这样可以避免后面系统启动项设置的问题.都采用UEFI引导方式,且使用usb2.0的u盘来引导(3.0的话,要准备好3.0的驱动).另外注意的 ...

  8. Ubuntu17.10 React Native 环境搭建

    React Native 环境搭建 环境:ubuntu17.10 安装依赖 必须安装的依赖有:Node.React Native 命令行工具以及 JDK 和 Andriod Studio. 安装nod ...

  9. [笔记] Ubuntu 18.04安装cuda 10及cudnn 7流程

    安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 1080 任务:安装 CUDA 10及cuDNN 7 工具下载 NVidia官网下载下列文件: CUDA 10:cu ...

随机推荐

  1. CentOS下Docker的安装及国内镜像配置

    系统,CentOS 7,最小化安装. 升级包 >$ sudo yum upgrade 安装Docker >$ sudo yum install docker 下面开始配置国内镜像.国外的实 ...

  2. python的自省函数, 快速找出BUG的良器

    python内置的好多自省函数,  合理使用可快速查找相关提示, 快速找到问题点, 以下开始具体说明 1. dir()  列出对象的所有属性和方法 如:  dir(list)  可以列出列表的所有属性 ...

  3. 网站微信登录-python 实现

    最近微信登录开放公测,为了方便微信用户使用,我们的产品也决定加上微信登录功能,然后就有了这篇笔记. 根据需求选择相应的登录方式 微信现在提供两种登录接入方式 移动应用微信登录 网站应用微信登录 这里我 ...

  4. MAC 下编译 ANDROID P 源码 提示 internal error: Could not find a supported mac sdk: ["10.10" "10.11" "10.12" "10.13"]

    MAC 下编译 ANDROID P 源码出现下面的问题: ninja: no work to do. [21/21] out/soong/.bootstrap/bin/soong_build out/ ...

  5. 分水岭分割算法(watershed segmentation)的C++实现(法2)

    运行环境:ubuntu16.04+Qt+opencv2.4.13.3 watershed.cpp #include "opencv2/imgproc/imgproc.hpp" #i ...

  6. ionic2中跨页面回传值

    1.在跳转到新页面时传入一个contactsCallback的参数,在该参数的函数定义中做出一个承诺. 注意:最开始我本来是采用如下图方式的,但是很不幸,出现了问题,问题所在就是关于这个this的作用 ...

  7. Python windows serial

    Python windows serial 一.参考文章: Serial port programming http://www.cnblogs.com/2zhyi/p/3405339.html py ...

  8. 中南林业科技大学第十一届程序设计大赛-C:有趣的二进制

    链接:https://www.nowcoder.com/acm/contest/124/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 131072K,其他语言26214 ...

  9. 用 dotTrace 进行性能分析时,各种不同性能分析选项的含义和用途

    对 .NET 程序进行性能分析,dotTrace 能应对绝大多数的场景.在开启一个进程进行性能分析之前,我们会看到一些性能分析选项(Profiler Options).本文将介绍这几个选项的含义,并用 ...

  10. 关于filter web api mvc 权限验证 这里说的够详细了。。。

    参考:http://www.cnblogs.com/willick/p/3331520.html Filter(筛选器)是基于AOP(面向方面编程)的设计,它的作用是对MVC框架处理客户端请求注入额外 ...