Python Tensorflow在GPT-2程序中未充分利用GPU
我正在运行大型模型(774M)的GPT-2代码。它用于通过交互式_conditional_samples.py链接生成文本样本: 因此,我给出了一个输入文件,其中包含自动选择生成输出的提示。此输出也会自动复制到文件中。简而言之,我不是在训练它,而是在使用模型生成文本。 而且,我使用的是一个GPU 我在这方面面临的问题是,代码没有充分利用GPU 通过使用NVIDIASMI命令,我可以看到下图Python Tensorflow在GPT-2程序中未充分利用GPU,python,tensorflow,gpt-2,Python,Tensorflow,Gpt 2,我正在运行大型模型(774M)的GPT-2代码。它用于通过交互式_conditional_samples.py链接生成文本样本: 因此,我给出了一个输入文件,其中包含自动选择生成输出的提示。此输出也会自动复制到文件中。简而言之,我不是在训练它,而是在使用模型生成文本。 而且,我使用的是一个GPU 我在这方面面临的问题是,代码没有充分利用GPU 通过使用NVIDIASMI命令,我可以看到下图 这取决于您的应用程序。当batch\u size较小时,GPU利用率较低并不罕见。尝试增加批处理大小以提高
这取决于您的应用程序。当
batch\u size
较小时,GPU利用率较低并不罕见。尝试增加批处理大小以提高GPU利用率
在本例中,您已经在程序中设置了batch_size=1
。将批处理单元大小增加到更大的数值,并验证GPU的利用率
让我解释一下使用MNIST大小的网络。它们很小,很难为它们实现高GPU(或CPU)效率。批量越大,计算效率越高,这意味着每秒可以处理更多的示例,但统计效率也会降低,这意味着需要处理更多的示例才能达到目标精度。因此,这是一种权衡。对于微小的角色模型,在批大小=100后,统计效率会很快下降,因此可能不值得尝试增加批大小以进行训练。为了进行推断,您应该使用可以使用的最大批量
希望这能回答你的问题。愉快学习。无法查看代码
交互式条件样本.py
。它说在github上找不到页面。嗨,谢谢你的评论。我已经用链接更新了帖子。你能用nvidia smi中的watch命令运行同样的命令吗。像这样watch-n0.25 nvidia smi
。看看GPU的使用情况是否有任何变化。似乎没有变化。您可以检查是否安装了tensorflow GPU版本,而不是cpu版本@业余爱好者-希望我们已经回答了您的问题。如果你对答案感到满意,请接受并投票。