ubuntu配置机器学习环境(二) cuda 和cudnn 安装
Nvidia CUDA Toolkit的安装(cuda)
PS:特别推荐*.deb的方法,目前已提供离线版的deb文件,该方法比较简单,不需要切换到tty模式,因此不再提供原来的*.run安装方法,这里以CUDA 7.5为例。
一、CUDA Repository
1.1 安装所需依赖包
sudo apt-get install build-essential # basic requirement
# sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler #required by caffe
获取CUDA安装包,安装包请自行去NVidia官网下载。(https://developer.nvidia.com/cuda-downloads)
cd 到安装包所在的文件位置,执行下面命令。
$ sudo dpkg -i cuda-repo-ubuntu1504---local_7.-18_amd64
$ sudo apt-get update $ sudo apt-get install cuda
安装完,这里可以重启电脑,分辨率就会自动调整了,不过不一定会变成完全适应屏幕。如果一开始安装Ubuntu没有出现输入信号的问题的话,不存在分辨率自动调整的问题。
1.2 设置环境变量:
(设置环境变量时,首先确定好cuda安装路径和位置,这一步非常重要,在安装时不需要对下面位置进行修改,系统会自动建立连接)
在/etc/profile中添加CUDA环境变量(最好使用vim,不要用gedit,刚刚装完系统gedit会导致键盘错乱,增加不必要的麻烦)
sudo gedit /etc/profile
在最后行添加内容:
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存后, 执行下列命令, 使环境变量立即生效
source /etc/profile
同时需要添加lib库路径: 在 /etc/ld.so.conf.d/加入文件 cuda.conf,
sudo vim /etc/ld.so.conf.d/cuda.conf
内容如下
/usr/local/cuda/lib64
/lib
/usr/lib
/usr/lib32 这里把lib库都加全了
保存后,执行下列命令使之立刻生效
sudo ldconfig -v
2.2 安装CUDA SAMPLE:
进入/usr/local/cuda/samples, 执行下列命令来build samples
sudo make all -j8
全部编译完成后, 进入/usr/local/cuda/samples/1_Utilities/deviceQuery$ ./deviceQuery , 运行deviceQuery
/usr/local/cuda/samples/1_Utilities/deviceQuery$ ./deviceQuery
如果出现显卡信息, 则驱动及显卡安装成功:
CUDA Device Query (Runtime API) version (CUDART static linking) Detected CUDA Capable device(s) Device : "GeForce GTX 960"
CUDA Driver Version / Runtime Version 7.5 / 7.5
CUDA Capability Major/Minor version number: 5.2
Total amount of global memory: MBytes ( bytes)
( ) Multiprocessors, () CUDA Cores/MP: CUDA Cores
GPU Max Clock rate: MHz (1.33 GHz)
Memory Clock rate: Mhz
Memory Bus Width: -bit
L2 Cache Size: bytes
Maximum Texture Dimension Size (x,y,z) 1D=(), 2D=(, ), 3D=(, , )
Maximum Layered 1D Texture Size, (num) layers 1D=(), layers
Maximum Layered 2D Texture Size, (num) layers 2D=(, ), layers
Total amount of constant memory: bytes
Total amount of shared memory per block: bytes
Total number of registers available per block:
Warp size:
Maximum number of threads per multiprocessor:
Maximum number of threads per block:
Max dimension size of a thread block (x,y,z): (, , )
Max dimension size of a grid size (x,y,z): (, , )
Maximum memory pitch: bytes
Texture alignment: bytes
Concurrent copy and kernel execution: Yes with copy engine(s)
Run time limit on kernels: Yes
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Disabled
Device supports Unified Addressing (UVA): Yes
Device PCI Domain ID / Bus ID / location ID: / /
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) > deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 7.5, CUDA Runtime Version = 7.5, NumDevs = , Device0 = GeForce GTX
Result = PASS
Nvidia CUDA Toolkit的安装(cudnn)
二、CUDNN Repository
这部分比较简单,首先要注册Nvidia的开发账号,然后才能下载cudnn。
简单地说,就是复制几个文件:库文件和头文件。将cudnn的头文件复制到/usr/local/cuda/lib64,将cudnn的库文件复制到/usr/local/cuda/include。
下载下来后,cd 到文件包目录下,解压文件:
tar -zxf cudnn-7.0-linux-x64-v4.-prod.tgz cd cuda
#链接到cuda的库里
sudo cp lib64/* /usr/local/cuda/lib64/
sudo cp include/cudnn.h /usr/local/cuda/include/
要不要链接cuDNN的库文件:http://www.cnblogs.com/empty16/p/4793404.html (要,必须要!!)
$ sudo ln -sf /usr/local/lib/libcudnn.so.4.0. /usr/local/lib/libcudnn.so. $ sudo ln -sf /usr/local/lib/libcudnn.so. /usr/local/lib/libcudnn.so
#链接完config更新
$ sudo ldconfig
完成cuda和cudnn的安装
ubuntu配置机器学习环境(二) cuda 和cudnn 安装的更多相关文章
- ubuntu配置机器学习环境(三) opencv 安装
这里使用脚本安装 一些教程里使用cmake 安装,很容易出错的 使用github上的安装脚本,自动化安装 参考链接 Ubuntu $ cd Ubuntu/2.4 $ chmod +x * # 如果要安 ...
- ubuntu配置机器学习环境(一) ubuntu安装
第一部分:Ubuntu14.04安装 Step :安装Ubuntu Step 1.1:准备安装U盘 首先到官网下载Ubuntu的镜像,我使用的是Ubuntu 14.04.3的ISO. 然后使用Ultr ...
- ubuntu配置机器学习环境(四) 安装intel MKL
在这一模块可以选择(ATLAS,MKL或者OpenBLAS),我这里使用MKL,首先下载并安装英特尔® 数学内核库 Linux* 版MKL,下载链接, 请下载Student版,先申请,然后会立马收到一 ...
- ubuntu 配置JDK环境变量
ubuntu 配置JDK环境变量 (2011-11-25 16:45:59) 转载▼ 标签: ubuntu jdk 环境变量 杂谈 分类: Linux_Ubuntu_CentOs 过程如下: 1. 先 ...
- Ubuntu 配置Tomcat环境(转载)
Ubuntu 配置Tomcat环境 1.下载Tomcat http://tomcat.apache.org/,下载Tomcat 8(由于目前最新eclipse不支持tomcat 9) 将下载的ap ...
- Ubuntu配置java环境变量
参考文章: http://www.cnblogs.com/BigIdiot/archive/2012/03/26/2417547.html 方法1:修改/etc/profile 文件所有用户的 she ...
- Mac之OS系统下搭建JavaEE环境 <二> 之Tomcat 的安装配置
二.Tomcat的安装与配置 1.下载Tomcat 找到Tomcat的官网 百度搜索Tomcat 点击下载即可 下载网址:http://tomcat.apache.org/download-80.cg ...
- wsl ubuntu 配置c++环境
1.sudo apt-get install build-essential 更新 配置源 2.sudo apt install gcc-8 3.sudo apt install g++-8 cd ...
- Linux:Ubuntu配置jdk环境变量
1.下载jdk 推荐官网:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 下载tar.gz包即可. ...
随机推荐
- CopyrightHelper—开源VS插件辅助插入版权注释
前言 有很多时候,我们在写代码的时候需要在代码文件头加上描述和版权信息等,如果使用代码项目模板又得为每种文件定模板,而已不方便,如果从某个地方复制过来,又嫌麻烦... 为了能解决这种懒人的需求,我开始 ...
- Azure之旅
http://www.microsoft.com/web/downloads/platform.aspx http://www.microsoft.com/en-us/download/details ...
- 开闭原则(OCP)
开闭原则具有理想主义的色彩,它是面向对象设计的终极目标.因此,针对开闭原则的实现方法,一直都有面向对象设计的大师费尽心机,研究开闭原则的实现方式.后面要提到的里氏代换原则(LSP).依赖倒转原则(DI ...
- Linux下文件的打包、解压缩指令——tar,gzip,bzip2,unzip,rar
本文是笔者对鸟叔的Linux私房菜(基础学习篇) 第三版(中文网站)中关于 Linux 环境下打包和解压缩指令的内容以及日常操作过程中所接触的相关指令的总结和记录,以供备忘和分享.更多详细信息可直接参 ...
- java中JVM的原理重温【转】
一.基础理论知识 1.java虚拟机的生命周期: Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序.程序开始执行时他才运行,程序结束时他就停止.你在同一台机器上 ...
- BZOJ 1191 超级英雄Hero 二分图匹配
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1191 题目大意: 现在电视台有一种节目叫做超级英雄,大概的流程就是每位选手到台上回答主 ...
- 动画的分类:属性(几何)动画、内容(视频)动画:gpu vs cpu
属性动画通过gpu根据属性来呈现: 内容动画通过cpu解码内容按照时间呈现给gpu: (或者gpu直接解码现实?)
- 【[SDOI2008]Sandy的卡片】
被\(mhr\)的暴力干翻了 这道题做法还是非常好想的 先做一遍差分,在每个串的某尾插入一个特殊字符,再将所有的串拼接在一起 现在的问题就转化为找到一个最长的公共子串使得其出现了\(n\)次,但是在一 ...
- Web项目打成war包部署到tomcat时报MySQL Access denied for user 'root'@'localhost' (using password: YES)错误解决方案
Web项目使用使用root账号root密码进行部署,通过Eclipse加载到Tomcat服务器可以发布成功,打成war包放到tomcat的webapps目录无法发布成功,报错: jdbc.proper ...
- 【ES6】最常用的es6特性(二)
1.for of 值遍历 for in 循环用于遍历数组,类数组或对象,ES6中新引入的for of循环功能相似,不同的是每次循环它提供的不是序号而是值. var someArray = [ &quo ...