【发布时间】:2012-06-21 11:11:10
【问题描述】:
我正在扩展 Linux 内核以控制某些线程的频率:当它们被调度到内核(任何内核!)时,内核的频率会通过将正确的 p 状态写入寄存器 @987654321 来更改@,正如英特尔手册中所建议的那样。 但是当调度不同“自定义”频率的不同线程时,似乎所有线程的吞吐量都增加了,好像所有内核都以最大设定频率运行。
我在不同的负载和配置条件下做了很多试验和测量,但结果是一样的。 在使用 CPUFreq 进行了一些试验后(没有运行应用程序,我在每个内核上设置了不同的频率,最后用 cpufreq-info -w 测量的频率相等),我想知道 CPU 内核是否可以真的 以不同的独立频率运行,或者如果有硬件政策或限制。
最后,有没有一种 CPU 模型可以使这种细粒度的频率缩放变得可行?
我使用的 CPU 是 Intel Core i5 750
【问题讨论】:
-
CPU 内核无法在不同电压下运行,因此这限制了设置不同频率/电压对的能力。
-
一般来说,每一代英特尔都带来了更多的内核分离,并允许对这些东西进行更细粒度的控制。
标签: linux linux-kernel intel frequency