我最近遇到了一个小故障,我的检测模型运行在两个不同的GPU(一个Quadro RTX4000和RTX A4000)上,在两个不同的系统上使用不同的GPU。该模型在Quadro系统上仅使用0.2%的GPU,在A4000机器上使用50%到70%。我很好奇为什么会发生这种情况。这两台机器上的其他硬件是相同的。
附加信息:该模型使用3D卷积并建立在tensorflow上。
看起来Quadro RTX4000
不使用GPU。
方法tf.test.is_gpu_available()
已弃用,尽管不使用GPU,但仍然可以返回True
。
验证GPU可用性+使用率的正确方法是检查代码片段的输出:
tf.config.list_physical_devices('GPU')
在Quadro机器上,你还应该运行(在终端):
watch -n 1 nvidia-smi
查看实时使用的GPU内存量。