Problems controlling CPU frequency on laptops with 533 MHz FSB

Vitaly Kashkarov
07-10-2005, 01:56 AM
This is cross-posting form Windows XP Performance and Maintenance.

We use presice timing in our program for timestamping different events. We
rely on processor frequency measurements to get high accuracy results. When
we ported our program to laptop we had to deal with Power Measurement to
guarantee that CPU runs at maximum frequency. We’ve created own power scheme
that gets activated by the program and lasts for its lifetime.
This power scheme has the following settings (the same for AC and DC):

POWER_POLICY power_policy;

// Disable throttling
power_policy.user.ForcedThrottleAc = 100;
power_policy.user.FanThrottleToleranceAc = 100;

// Disable idle timeout
power_policy.user.IdleTimeoutAc = 0;

// Set idle sencitivity threshold in % of CPU activity
power_policy.user.IdleSensitivityAc = 1;

// Set processor dynamic throttling policy
power_policy.user.ThrottlePolicyAc = PO_THROTTLE_NONE;

// Set preference of using a fan to throttling
power_policy.user.OptimizeForPowerAc = TRUE;

MACHINE_PROCESSOR_POWER_POLICY processor_power_policy;

processor_power_policy.ProcessorPolicyAc.DynamicThrottle = PO_THROTTLE_NONE;

This power scheme when activated keeps CPU at its maximum frequency.

That was the case until we started working with the newest laptops based on
Pentium M 760. The settings in the power scheme above do not prevent the
processor from throttling.

I’ve got a test that measures time between two external events and counts
the number of processor clocks using RDTSC instruction.
If executing on a laptop based on Pentium M 755 (2GHz, 400 MHz FSB), the
test shows that with the power scheme (see the settings above) activated the
processor runs at top frequency all the time, no matter what CPU load is.
The same test running on a laptop based on Pentium M 760 (2GHz, 533 MHz
FSB), or on Pentium M 770 (2.13GHz, 533 MHz FSB) shows that frequency goes up
and down depending on CPU load.

Please, give me a hint on what I can do to keep CPU frequency at its maximum.

I’ve also checked BIOS settings, the only two options available are dynamic
frequency switching and always low.

Any ideas are welcome.

Problems controlling CPU frequency on laptops with 533 MHz FSB