我们安装了Ubuntu 18.04和RTX 2080Ti GPU的机器,大约有3-4个用户远程使用它。有没有可能给出每个用户的GPU使用率的最大阈值(比如60%),这样其他任何人就可以使用剩下的?
我们正在运行tensorflow深度学习模型,如果它有助于建议替代方案。
发布于 2019-07-03 20:38:10
我很抱歉花了这么长时间才回到这里来回答这个问题,即使在想出了一个解决方法之后。
确实可以使用tensorflow的per_process_gpu_memory_fraction来设置GPU使用率的阈值。因此,我编辑了这个问题
下面的代码片段为用户分配了46%的GPU内存。
init = tf.global_variables_initializer()
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.46)
with tf.Session(config=tf.ConfigProto(gpu_options=gpu_options)) as sess:
sess.run(init)
############
#Training happens here#
############目前,我们有两个用户同时使用相同的GPU,没有任何问题。我们给每个人分配了46%。请确保您没有将其设置为50-50% (如果这样做,则会发生核心转储错误)。尽量使300MB左右的内存处于空闲状态。
事实上,这个GPU部门并不会减慢训练过程。令人惊讶的是,它提供的速度与使用全部内存的速度大致相同,至少根据我们的经验是这样。不过,对于高维数据,这种情况可能会发生变化。
https://stackoverflow.com/questions/54912579
复制相似问题