限制 TensorFlow GPU 内存分配
TensorFlow 的默认行为在启动时分配全部可用 GPU 内存,这在共享计算环境中提出了挑战。当多个用户在同一 GPU 上运行并发训练时,必须防止内存消耗过多。
解决方案:GPU 内存分数
为了解决这个问题,TensorFlow提供指定要分配的 GPU 内存部分的选项。通过在 tf.GPUOptions 对象中设置 per_process_gpu_memory_fraction 字段,您可以限制内存消耗。下面是一个示例:
# Restrict memory allocation to 4GB on a 12GB GPU gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333) # Create a session with the GPU options sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
此方法为同一台计算机上所有 GPU 上的当前进程提供了 GPU 内存使用的硬性上限。但请注意,该比例在所有 GPU 上统一应用,并且没有针对每个 GPU 内存分配的选项。
以上是如何限制 TensorFlow 的 GPU 内存分配?的详细内容。更多信息请关注PHP中文网其他相关文章!