I want to know if SpeedStepping is enabled

I want to know if SpeedStepping is enabled

Post by Lass » Sat, 31 Mar 2007 23:31:03


Hi
I am writing a program that needs to know if SpeedStepping is enabled or
not.

I know how to get the information SpeedStepping supported by using the
CPUID instruction.

All I have found out so far is that BIOS, at start up writes this
information in some register 'IA32_MISC_ENABLE'.

How can I access this register ?
Is this information stored somewhere in XP Registry ?

Lasse
 
 
 

I want to know if SpeedStepping is enabled

Post by Pavel A » Mon, 02 Apr 2007 06:14:04


This register is a MSR (a special CPU register) - not in the registry.

--PA

 
 
 

I want to know if SpeedStepping is enabled

Post by Pavel A » Mon, 02 Apr 2007 06:25:11

How to read a MSR: see __readmsr() intrinsic function

--PA
 
 
 

I want to know if SpeedStepping is enabled

Post by eran.borov » Mon, 02 Apr 2007 17:37:39


This instruction is protected and cannot be called from user-mode.
 
 
 

I want to know if SpeedStepping is enabled

Post by Skywing [M » Sat, 07 Apr 2007 00:36:53

You could check the power policy via
CallNtPowerInformation(...ProcessorPowerPolicyCurrent...) and then inspect
the `DynamicThrottle' member. Assuming no ill-behaved drivers are going
behind the OS's back with respect to the processor throttle MSRs, this
should tell you whether the OS has enabled throttling or not.

CallNtPowerInformation(...ProcessorInformation...) can be used to retrieve
the current effective processor speed if throttling is engaged.

--
Ken Johnson (Skywing)
Windows SDK MVP
http://www.yqcomputer.com/
 
 
 

I want to know if SpeedStepping is enabled

Post by Lass » Wed, 11 Apr 2007 06:36:16


Thank you
Your answer solves my problems.
Lasse