共计 736 个字符,预计需要花费 2 分钟才能阅读完成。
在写 tf.GPUOptions 之前有必要提一下 tf.ConfigProto。tf.ConfigProto 个别在 tf 建设 session 的时候,以 config 的参数传入的形式来进行 session 的配置。而 tf.GPUOptions 是作为 tf.ConfigProto 的参数来限度 GPU 资源的利用。
tf.GPUOptions 应用
当多人应用同一服务器,若是一个人占用了所有 GPU 资源,这就有点不适合了。。。
以下两种办法能够正当的并行分配资源,多人应用训练互不打搅。
1. 动静申请显存
with tf.Graph().as_default(), tf.Session(config=tf.ConfigProto(gpu_options=tf.GPUOptions(allow_growth=True))) as sess:
#config=tf.ConfigProto(gpu_options=tf.GPUOptions(allow_growth=True)) for automatically applying the GPU memory
# Placeholders
# inside of sess......
2. 给 GPU 的显存利用率设置阈值
with tf.Graph().as_default(), tf.Session(config=tf.ConfigProto(gpu_options=tf.GPUOptions(per_process_gpu_memory_fraction=0.7))) as sess:
# Placeholders
# inside of sess......
除了以上办法还能够简略粗犷的在 Python 源文件运行的时候指定 GPU IDCUDA_VISIBLE_DEVICES=1 python test.py
正文完
发表至: tensorflow
2020-09-15