赞
踩
本文主要针对Keras(Tensorflow2.0版本以后)深度学习框架如何对GPU进行配置,以及如何设置训练任务对GPU的占有率。
首先,为了明确使用的GPU型号,ubuntu系统下可以利用终端指令查看系统GPU的使用、型号情况。
sudo nvidia-smi
输出的结果如下:

也可以在代码中通过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内存的占有率,防止为了训练模型而影响服务器的其他任务正常使用。
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内存的占有率
本文仅作为学习笔记交流分享用。由于本人水平有限,文章可能出现纰漏,欢迎大家进行交流指正。谢谢阅读!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。