由于学习需要,手上有一台图形工作站,GPU是NVIDIA Quarter K2000的,就试着看看装个GPU环境训练
在官网可以查到自己的GPU是否支持CUDA加速
一般算力在3.0的才可以支持cudnn加速,如果自己的显卡版本没在这上面,还是老老实实使用CPU训练吧(不过一般N卡好像都支持cuda)
官网根据个人电脑配置自行下载对应的CUDA Toolkit
下载完成后是个exe文件,双击执行就行了,跟普通软件安装方法一样,
中间选择的地方选择 精简安装
nvcc -V
找到装好的cuda目录
将此路径加入系统变量Path中
C:\Program Files\NVIDIA Corporation\NVSMI
解压下载好的cudnn文件,解压的目录可以随便设置,主要是为了将路径加入到环境变量中
D:\Program Files\Nvidia\cuda\bin
安装Anaconda就不在多说直接开始安装虚拟环境
打开anaconda prompt
输入
conda create --name tensorflow-gpu python=3.6 anaconda
解释
create --name tensorflow 创建tensorflow虚拟环境的名称是tensorflow-gpu
python=3.6 对应的Python版本号
anaconda 对应安装的anaconda的相关依赖库例如numpy,scikit-learn,pandas等等
安装tensorflow-gpu
pip install tensorflow-gpu
安装keras
pip install keras
安装完成
打开anaconda prompt
输入
activate tensprflow-gpu
激活tensorflow-gpu环境
另外安装完成后在开始菜单中会出现这样的图片
如图
输入python
出现这种情况表示安装完成,否则安装失败,自行排查问题
如果出现DLL load Error的问题,注意是版本的问题或者是CUDA和cuDNN版本号不对应
然后正式测试该环境是否使用的是GPU训练的
在此虚拟环境下面打开jupyter lab或者jupyter notebook
输入代码
import tensorflow as tf
import keras
# Creates a graph.
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
# Runs the op.
print(sess.run(c))