利用GPU训练的配置方法(Keras)

利用GPU训练的配置方法(Keras)

  • GPU的使用配置
  • 配置GPU内存的占用率

本文主要针对Keras(Tensorflow2.0版本以后)深度学习框架如何对GPU进行配置,以及如何设置训练任务对GPU的占有率。

GPU的使用配置

首先,为了明确使用的GPU型号,ubuntu系统下可以利用终端指令查看系统GPU的使用、型号情况。

sudo nvidia-smi

输出的结果如下:

利用GPU训练的配置方法(Keras)_第1张图片
也可以在代码中通过tensorflow_backend获取到可用的GPU信息。

from keras import backend as K
print(K.tensorflow_backend._get_available_gpus())

输出结果如下:
在这里插入图片描述

接下来,在代码中通过CUDA_VISIBLE_DEVICES来选定GPU:

import tensorflow as tf
os.environ["CUDA_VISIBLE_DEVICES"] = "0"

将编号选择成对应的GPU编号即可选定该GPU训练模型。

若要选定多块GPU,将相应的GPU编号用逗号隔开,即可。

os.environ["CUDA_VISIBLE_DEVICES"] = "0,1"

配置GPU内存的占用率

在上述已经选定完成GPU的使用配置后,可以选择训练模型时对GPU内存的占有率,防止为了训练模型而影响服务器的其他任务正常使用。

gpus = tf.config.experimental.list_physical_devices(device_type='GPU')
for gpu in gpus:
    tf.config.experimental.per_process_gpu_memory_fraction = 0.7	#可调整GPU内存的占有率

通过上述两个配置,即可实现在GPU训练环境已配置(cuda、cudnn等)的情况下,实现GPU训练Keras2.x的深度学习模型。

本文仅作为学习笔记交流分享用。由于本人水平有限,文章可能出现纰漏,欢迎大家进行交流指正。谢谢阅读!

你可能感兴趣的:(keras,深度学习,gpu)