ubuntu17.10 安装CUDA
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的更多相关文章
- ubuntu17.10安装LAMP并测试部署php探针系统
ubuntu17.10修改密码以及安装LAMP并部署php探针系统 步骤1:ubuntu17.10配置IP (这个版本配置IP方式改变较大,apt-get upgrade更新至最新以前配置方式也可以用 ...
- ubuntu17.10安装lnmp安装包的核心问题-gcc版本、g++版本
大致碰到的问题都是这样,不是php安装失败,就是MySQL安装失败,或者Nginx也安装失败 基本上是花式报错.后来在军哥的论坛中找到了这个帖子:https://bbs.vpser.net/viewt ...
- Ubuntu17.10安装Docker
Ubuntu环境下安装Docker 1. 系统要求 Docker目前只能运行在64位平台上,并且要求内核版本不低于3.10,实际上内核越新越好,过低的内核版本容易造成功能不稳定. 可以通过如下命令检查 ...
- ubuntu-17.10 安装 FANN
因为想用C语言写神经网络,不用已有的库的话,又太难了,所以准备安装一个夸平台的FANN库, 源文件下载地址http://leenissen.dk/fann/wp/download/,我下载的是最新 ...
- ubuntu17.10 安装firefox的flash
1. flash下载地址:https://get.adobe.com/flashplayer/ 2. 选择tar.gz for linux 3. 下载后解压tar包.里面有个libflashplaye ...
- ubuntu17.10 安装ssh
sudo apt-get install openssh-server sudo /etc/init.d/ssh start
- 搭建双系统win10+ubuntu17.10
0. 序言 这里采用先装win10,再装ubuntu的顺序.这样可以避免后面系统启动项设置的问题.都采用UEFI引导方式,且使用usb2.0的u盘来引导(3.0的话,要准备好3.0的驱动).另外注意的 ...
- Ubuntu17.10 React Native 环境搭建
React Native 环境搭建 环境:ubuntu17.10 安装依赖 必须安装的依赖有:Node.React Native 命令行工具以及 JDK 和 Andriod Studio. 安装nod ...
- [笔记] Ubuntu 18.04安装cuda 10及cudnn 7流程
安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 1080 任务:安装 CUDA 10及cuDNN 7 工具下载 NVidia官网下载下列文件: CUDA 10:cu ...
随机推荐
- 使用file_get_contents提交http post
以前使用curl获取需要登陆内容的文章,但其实,自5.0开始,使用file_get_contents就可以完成.(前提是开启了allow_url_fopen),下面以一个简单的例子说明一下:1.先看一 ...
- “之”字形输出二叉树 python
“之”字形输出二叉树即第1层从左到右输出,第2层从右到左输出,第3层从左到右输出......第2*n层从右到左输出,第2*n+1层从左到右输出,如下图所示二叉树,“之”字形输出的结果为:1-3-2-4 ...
- C/C++ 父子进程之间的文件描述符问题
在C程序中,文件由文件指针或者文件描述符表示.ISO C的标准I/0库函数(fopen, fclose, fread, fwrite, fscanf, fprintf等)使用文件指针,UNIX的I/O ...
- python 安装psutil包报错:
报错: Failed building wheel for psutil Google得知,需要安装python-devel 和 wheel sudo dnf install python-devel ...
- 【Python】matplotlib 双y轴绘制及合并图例
1.双y轴绘制 关键函数:twinx() 问题在于此时图例会有两个. # -*- coding: utf-8 -*- import numpy as np import matplotlib.pypl ...
- 使用mongoperf评估磁盘随机IO性能
用法举例: # 16个io线程 # 随机读写10GB的测试文件 echo "{nThreads:16,fileSizeMB:10000,r:true,w:true}" | mong ...
- c++交叉#include问题
这个问题会引起莫名其妙的编译错误, 碰到类里有其他类的指针的话,不要#include,提前声明下即可 class_a.h #ifndef CLASS_A_H #define CLASS_A_H cla ...
- Fiddler显示响应时间 显示服务器IP
在主界面菜单上 Rules->CustomRules 在class Handlers{}里添加class 如: 显示响应时间 class Handlers { …… ) function Tim ...
- Sql Server中的事务隔离级别
数据库中的事物有ACID(原子性,一致性,隔离性,持久性)四个特性.其中隔离性是用来处理并发执行的事务之间的数据访问控制.SqlServer中提供了几种不同级别的隔离类型. 概念 Read UnCom ...
- 几个与JVM相关的JDK工具:jps, jstat, jmap
在项目中遇到OOM(Out of Memory)的问题,为了分析内存和JVM的垃圾回收器GC问题,一并把JVM相关的一些工具也研究了一下: jps:Java进程查看工具,实际上它和Unix/Linux ...