引言

本人电脑内存24G,i5-7300HQ,1050ti-4G,最近在使用Keras进行训练时候觉得速度较慢,跑起来比较费劲,就想着看一下到底用的是什么跑的,网上查了好几个,用Theano查询,但是效果不明显经过一番折腾,发现一个很简单的方法

判断

打开任务管理器,看一下显存

如果是显存利用率很低,这样的就是没用到GPU

解决方案

keras 使用GPU是基于 tensorflow 的GPU版本,所以使用 keras 要先安装tensorflow-gpu
使用Anaconda安装tensorflow-gpukeras-gpu

安装后的keras会自动选择可用GPU进行计算

指定运行时显卡及限制GPU用量

如果需要指定GPU或者限制使用率的话可用使用以下代码:

import os
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session
#进行配置,每个GPU使用60%上限现存
os.environ["CUDA_VISIBLE_DEVICES"]="1,2" # 使用编号为1,2号的GPU
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.6 # 每个GPU现存上届控制在60%以内
session = tf.Session(config=config)

# 设置session
KTF.set_session(session)

结果


To capture the forces of nature.