Question

I want to find the interface supplied by windows to change the CPU frequency and core voltage. Thanks!

Was it helpful?

Solution

From Windows Native Processor Performance Control(document link)

Parameters to P-state policy Several parameters to Windows processor performance state controls are configurable via registry keys. These keys are provided with the intent that OEMs and system designers may tune the performance of Windows processor power management features to best suit specific platform designs, and allow adjustment to help achieve maximum battery life and realize the best system performance.

And you have to restart to have the changes take effect.

OTHER TIPS

you can change frequency by using

PowerWriteACValueIndex()/PowerWriteDCValueIndex()

when setting the same index value for both

GUID_PROCESSOR_THROTTLE_MAXIMUM | GUID_PROCESSOR_THROTTLE_MINIMUM

all the GUID description could be found in winnt.h

you cannot change CPU voltage by WINAPI. you should use the privileged commands to write to specific MSRs (see AMD/Intel docs) via system kernel driver. you cannot change Intel CPU voltage AT ALL since Nehalem micro-architecture. Intel officially does not supply MSRs to write voltage values (VIDs) by software.

Microsoft Windows does not have an API for overclocking / underclocking a CPU. You would have to roll your own using your assembler skills.

I can do no more than point you in the right direction. I think through Windows Management Instrumentation (WMI) you can get at a COM interface that allows modification of some sub-systems.

Hopefully that vague bit of information will set you on the right path. :-)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top