【发布时间】:2020-07-06 06:23:40
【问题描述】:
我想在多 GPU 系统上分析用 Tensorflow 编写的变压器模型的训练循环。由于代码不支持 tf2,我无法使用 built-in but experimental 分析器。因此,我想使用 nvprof + nvvp(CUDA 10.1,驱动程序:418)。
我可以分析代码而不会出现任何错误,但是,在 nvvp 中检查结果时,没有 GPU 数据。我不知道是什么原因造成的,因为 nvidia-smi 清楚地表明 GPU 已被使用。
This thread 似乎描述了同样的问题,但没有解决方案。按照this question 中的建议,我在代码上运行了 cuda-memcheck,没有产生任何错误。
我尝试使用其他命令行参数运行 nvprof,例如 --analysis-metrics(没有区别)和 --profile-child-processes(警告它无法捕获 GPU 数据),但无济于事。
谁能帮我理解为什么我无法捕获 GPU 数据以及如何解决这个问题?
另外,为什么分析深度神经网络的资源这么少?看来,随着训练时间的延长,确保充分利用所有计算资源尤为重要。
谢谢!
【问题讨论】:
标签: python tensorflow profiling nvidia nvprof