【发布时间】:2015-12-02 10:06:33
【问题描述】:
我正在使用 Tesla K20c 并在我的应用程序运行时使用 nvidia-smi 测量功率。我的问题是功耗没有达到稳定状态,而是不断上升。例如,如果我的应用程序运行 100 次迭代,功率达到 106W(4 秒内),1000 次迭代达到 117 W(41 秒内),10000 次迭代达到 122W(415 秒内),依此类推,每次都略有增加。我正在写一些关于我应该记录哪个功率值的建议。在我的实验设置中,我进行了 400 多个实验,并且每个实验进行 10000 次迭代至少目前是不可行的。该应用程序是矩阵乘法,只需一次迭代即可完成,只需几毫秒。增加迭代次数不会对结果带来任何价值,但会增加运行时间,从而实现功率监控。
【问题讨论】:
-
我之前在 K20c 上做过这样的实验,大约 10 分钟,基于此我想你会发现大约 5 到 6 分钟后达到稳定状态,之后只有噪音+/- 2W 的振荡。这些卡有一个相当大的金属背板,因此带有内存的整个 GPU 需要一些时间来加热,并且随着温度的升高,电子设备的功耗会增加。此外,该卡是主动冷却的,并且较热的卡意味着风扇会旋转得更快,如果有记忆的话,这会产生大约 5W 的差异。您打算如何使用测量结果?
-
感谢您的洞察力。知道这一点很有帮助。我正在为不同矩阵大小和另一个参数(即元素数量)建模 GPU 性能和功耗。我有大约 20 个矩阵大小需要考虑,每个矩阵大小大约有 20 个不同数量的元素。
-
如果你只需要这些版本的相对功耗,每个版本运行30秒还不够,然后让GPU空闲30秒让它冷却(大致平衡每次运行的起始条件)?您的 400 次实验每次都需要一分钟,并且可以在一夜之间完成。请记住,GPU 上的功率传感器并非旨在提供高精度测量,因此您需要假设总测量噪声可能为 5%。您可能希望对同一类型的多个 GPU 的测量值进行平均,以考虑制造公差
-
我觉得这个策略不错。谢谢。