[an error occurred while processing this directive]
« | » |
We deliberately left this technology for the end – as we have demonstrated above, this very technology (at least its basic principle) is used as a basis for all the other performance/power consumption management technologies in Pentium 4 and Xeon processors. Software controlled on-demand clock modulation is indicated by the ACPI flag in CPUID, it can be controlled using processor MSR IA32_CLOCK_MODULATION.
The main parameters in control of this technology – enable/disable and specified minimum level of CPU duty cycle (from 12.5% to 87.5% at 12.5% steps, it also has a reserved value).
We'll use the CPUMSR utility again to examine the software controlled modulation. At first, let's take a Xeon Nocona processor (its results are more illustrative) and set the maximum modulation level – from 12.5% of duty cycles.
|
The result is very interesting – in almost idle mode the throttled CPU clock drops to 785 MHz (approximately 23% of the actual CPU clock, which is naturally not changed). It's instantly restored to maximum when a CPU gets loaded – even the minimum load, you can see it well in the right screenshot. Here you can also see that ODCM can be successfully used together with Enhanced SpeedStep. In this case throttled CPU clock varies within 647–2800 MHz (at the specified 14x "multiplier"). |
|
The same picture is with Prescott. This processor acts a bit differently – on the left screenshot you can see a steady growth of duty cycle from 12.5% to 50%, which results in no changes in throttled CPU clock and means that the minimum possible duty cycle of a processor is 50%. The picture on the right shows further increase of duty cycle to 100% (that is complete ODCM blackout), which is accompanied by increased throttled CPU clock. It's not quite clear why Intel calls this technology "software controlled". Yep, its settings (enable/disable) are indeed software controlled (as well as settings of all the other technologies except for the catastrophic shutdown detector), but its behaviour is completely automated (on the hardware level) and you can easily see that from our tests.
[an error occurred while processing this directive] |