Gluon学习02-使用GPU
目录,方便快速定位:
本机环境介绍:
系统:Linuxmint
Python版本:Python3
1.安装cuda与cudnn
(0)定义
CUDA(Compute Unified Device Architecture),是英伟达公司推出的一种基于新的并行编程模型和指令集架构的通用计算架构,它能利用英伟达GPU的并行计算引擎,比CPU更高效的解决许多复杂计算任务。
cuDNN(CUDA Deep Neural Network library):是NVIDIA打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库。如果你要用GPU训练模型,cuDNN不是必须的,但是一般会采用这个加速库。
(1)下载
选择合适版本下载cuda:
网址:https://developer.nvidia.com/cuda-downloads

配合前面的cuda版本,下载相应的cudnn:
网址:https://developer.nvidia.com/rdp/cudnn-archive
注:这里需要注册账号才可以下,有时收不到激活邮件,可以多试试不同放入邮箱,不行就出去一下.
(2)安装
下载完成以上两个文件后,首先安装cuda,使用以下命令安装:
- sudo dpkg -i cuda-repo-ubuntu1604-9-0-local_9.0.176-1_amd64.deb
- sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
- sudo apt-get update
- sudo apt-get install cuda
然后,解压cudnn,将相应文件拷贝的cuda的安装目录上,使用以下命令:
- tar xvzf cudnn-8.0-linux-x64-v5.1-ga.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 /usr/local/cuda/lib64/libcudnn*
(3)配置
将cuda安装路径配置到系统路径下:
- export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
- export CUDA_HOME=/usr/local/cuda
根据自己环境将该信息添加到相应文件,我的是~/.zshrc,如果终端是bash,则是~/.bashrc.
2.安装mxnet-gpu
(1)卸载以前安装的CPU版本的mxnet
- pip uninstall mxnet
(2)安装mxnet-gpu
根据前面安装的cuda 版本,安装相应的mxnet-gpu
- pip install --pre mxnet-cu75 # CUDA 7.5
- pip install --pre mxnet-cu80 # CUDA 8.0
- pip install --pre mxnet-cu90 # CUDA 9.0
注:如果安装过程过慢,可以更换pip的源,更换方法是可以看这篇博客更换pip源到国内镜像
参考:
Gluon动手学深度学习
每日一学,争取进步02
Gluon学习02-使用GPU的更多相关文章
- Gluon学习03-基础数据类型Ndarray
Gluon学习03-基础数据类型Ndarray 小书匠 kindle 目录,方便快速定位: 1.安装cuda与cudnn 2.安装mxnet-gpu 本机环境介绍: 系统:Linuxmint Pyt ...
- JavaScript学习02 基础语法
JavaScript学习02 基础语法 JavaScript中很多基础内容和Java中大体上基本一样,所以不需要再单独重复讲了,包括: 各种算术运算符.比较运算符.逻辑运算符: if else语句.s ...
- Java虚拟机JVM学习02 类的加载概述
Java虚拟机JVM学习02 类的加载概述 类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对 ...
- Python学习02 列表 List
Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...
- Android Testing学习02 HelloTesting 项目建立与执行
Android Testing学习02 HelloTesting 项目建立与执行 Android测试,分为待测试的项目和测试项目,这两个项目会生成两个独立的apk,但是内部,它们会共享同一个进程. 下 ...
- Java学习02
Java学习02 1.导入内部的包 一.在包的下面加入下面一句话: import java.util.Scanner; 二.在类中 Scanner input=new Sanner(Sy ...
- ThinkPhp学习02
原文:ThinkPhp学习02 一.什么是MVC M -Model 编写model类 对数据进行操作 V -View 编写html文件,页面呈现 C -Controll ...
- JVM学习02:GC垃圾回收和内存分配
JVM学习02:GC垃圾回收和内存分配 写在前面:本系列分享主要参考资料是 周志明老师的<深入理解Java虚拟机>第二版. GC垃圾回收和内存分配知识要点Xmind梳理 案例分析1-(G ...
- 2018.12.22 Spring学习02
Spring学习02 1.使用注解配置Spring 1.1 为主配置文件引入新的命名空间(约束) 添加约束文件xxx-xxx-context.xml 添加到主配置文件中 选择刚才的context.xm ...
随机推荐
- MySql五大引擎的区别以及优劣之分
五大引擎 一: MyISAM:在创建MyISAM的时候会出来三个默认的文件 1.tb_demo.frm,存储表定义:2.tb_demo.MYD,存储数据:3.tb_demo.MYI,存储索引. 因为M ...
- 用 cabarc.exe 制作CAB(带子目录)
原文转自 https://blog.csdn.net/crab530143383/article/details/17308623 先下载cabarc.exe,makeCAB 假设cabarc.exe ...
- C# 卡控时间输入
int hour = (int.Parse(DateTime.Now.Hour.ToString())) * 60; int minute = int.Parse(DateTime.No ...
- 扩展支持全选的CheckBox列。
扩展支持全选的CheckBox列. https://www.codeproject.com/articles/42437/toggling-the-states-of-all-checkboxes-i ...
- Java Swing中文乱码解决方法
Run As Run Configuration,在Arguments中增加下面这句: -Dfile.encoding=gbk
- vue.js+DRF跨域访问图片
一.背景 在前后端分离过程时,后端服务器只开放本地接口,而前端则开放IP接口,在DRF响应请求时,会把域名(locahost+port)响应给前端服务器,前端服务器把再把数据响应给浏览器,浏览器在解析 ...
- Go part 8 并发编程,goroutine, channel
并发 并发是指的多任务,并发编程含义比较广泛,包含多线程.多进程及分布式程序,这里记录的并发是属于多线程编程 Go 从语言层面上支持了并发的特性,通过 goroutine 来完成,goroutine ...
- Java中的反射机制和动态代理
一.反射概述 反射机制指的是Java在运行时候有一种自观的能力,能够了解自身的情况为下一步做准备,其想表达的意思就是:在运行状态中,对于任意一个类,都能够获取到这个类的所有属性和方法:对于任意一个对象 ...
- 微信开发者工具 关于no such file or directory
在新建页面中,保存后弹出 “ no such file or directory ” 错误 原因是打开了一个文件,然后在目录树中删除了它,但是这个被删除的页面依旧在打开状态,开发者工具在编译保存时由于 ...
- java利用反射打印出类的结构
1 输入一个类名:java.lang.String将打印出String类定义的结构,例如: public final class java.lang.String { public java.lang ...