0

我正在尝试实现动态电压和频率缩放 (DVFS) 算法,该算法根据 CPU 的负载改变 CPU 的工作频率。我正在使用的系统是运行 Ubuntu 14.04 的 Intel core-i5 处理器。

我的程序可以正常工作,它会按预期选择并设置 CPU 的频率。不过,我很好奇 CPU 是如何选择工作电压的。

  • 例如,当设备在电池供电下运行时,CPU 是否会根据当前 CPU 频率动态选择工作电压?
  • 给定 CPU 频率是否存在相关电压?
  • 如果是这样,是否有一个我可以用来查找这些值的 linux 命令?
4

1 回答 1

1

你说的是P状态。P 状态是电压/频率配对。降低电压的好处是漏电流减少,省电。另一方面,降低电压会增加开关时间,需要较低的频率。

以下是我对您的问题的猜测。

  • 我确信在频率降低的任何情况下,例如使用电池运行,电压也会降低。您可以通过降低漏电流来节省电能,这与降低的结电压有关。
  • 有一个与任何给定频率相关的电压。这样想吧。对于任何给定的频率,您都希望使用能够提供可接受错误率的最低电压。如果你不这样做,你就是在无缘无故地浪费能量。
  • 我找到了这个参考。查看“CPU 频率缩放”。在我的一篇电源管理文章中,我记得提到过一些关于 linux 内核电源管理的“精彩文章”,其中作者实际上讨论了电源管理表。不幸的是,我在简短的浏览中找不到它。如果你真的很想找到,可以浏览一下我的电源管理博客
于 2016-10-12T04:36:51.457 回答