调节 TensorFlow 中的 GPU 内存分配
在共享计算环境中,有效的资源管理至关重要。 TensorFlow 是一种流行的机器学习库,它倾向于在启动时分配整个可用的 GPU 内存,即使对于较小的模型也是如此。这可能会阻碍多个用户同时训练。
限制 GPU 内存分配
为了解决此问题,TensorFlow 提供了限制训练过程分配的 GPU 内存的功能。通过在 tf.Session 的 config 参数中设置 tf.GPUOptions 的 per_process_gpu_memory_fraction 属性,您可以指定要使用的总 GPU 内存的一部分。
例如,要分配大约 4 GB 的 GPU 内存对于 12 GB Titan X GPU,可以使用以下代码:
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
此设置充当上限,确保使用的 GPU 内存量不超过指定的分数。但是,它统一适用于同一台机器上的所有 GPU,并且无法针对每个 GPU 单独进行调整。
以上是如何控制 TensorFlow 中的 GPU 内存分配?的详细内容。更多信息请关注PHP中文网其他相关文章!