# Applied undervolting in BIOS, cannot see effect on ThrottleStop



## validate (Sep 19, 2021)

Hi,

As you know, Plundervolt has been mitigated by blocking the access of 0x150 MSR with software. On Windows 10, I was able to remove the undervolting lock by changing the "Overclocking Lock" parameter from 1 to 0 with RU.efi. But Windows 11, it is not possible while WSL2 is active, I know virtualization should be disabled in order to regain the ability of undervolting but I need WSL2.

Then, I had an idea. Could I change the offset directly in BIOS? There was no interface to interact with, but it could be possible if I change the right bits IMO. I attached the dump also.

Just in case, OverClocking Feature (0x1B7) in CpuSetup(0x3) changed 0x0 to 0x1
Offset Prefix (0x1BF) in CpuSetup(0x3) changed 0x0 to 0x1 in order to get negative offset
Core Voltage Offset (0x1BD) in CpuSetup(0x3) changed 0x0 to 0x46 to get -70 mV. (Normally I used -95 mV with TS, but wanted to be safe)
Did not touch GT, Uncore, etc.
The variables are written successfully, checked twice.

Actually, I can see lower temperatures with less fan (placebo???), but ThrottleStop doesn't say anything about my lowered offset voltage. I think TS cannot read the correct values also? Tried HWMonitor, HWiNFO64, no luck.

How can I ensure that the offset voltages are applied successfully? Still no GUI on BIOS, can see with RU.efi.

Thanks in advance.


----------



## unclewebb (Sep 19, 2021)

validate said:


> How can I ensure that the offset voltages are applied


Only by checking your CPU temperatures. Software cannot read offset voltages in Windows 11 when VMX is enabled and WSL2 is being used.


----------



## validate (Sep 19, 2021)

After using some time, I can say that there is an improvement in terms of temperatures. The fans are running less. It was better with -90 -95, but I do not want to risk the laptop.

One last question: I couldn't find about CPU cache voltage offset on my BIOS dump. Furthermore, when I searched about the cache voltage offset of BIOS, I've never seen anyone have such an option in their BIOS. So, should changing the CPU Voltage Offset also change the Cache Voltage Offset? I read somewhere that if both are not at the same level, it seems to be ignored. 

Thank you so much for helping.


----------



## unclewebb (Sep 19, 2021)

The core and cache voltages are stored in two separate locations within the CPU. When you enter an offset voltage into the BIOS, it will set both of these registers equally. There is no requirement that both of these registers have to be set equally. Some CPUs show better results by setting the core offset to a bigger number compared to the cache offset.

Here are some Cinebench examples while using different votlages.





						Cinebench Test.zip
					






					drive.google.com
				




I have been told that using different offset values tricks the CPU into using less voltage when it is executing AVX instructions. That is why Cinebench R20 is a good test for this. I have seen enough user test results to know that setting the core higher than the cache results in either better performance or better temperatures. 

On some CPUs, changing only the core offset register will not accomplish anything. This setting will be ignored by the CPU. If you set only the core to -1000 mV, the CPU will ignore this request or any request it does not understand.


----------



## validate (Sep 19, 2021)

Thanks for the info! Also, I checked Core VID, and undervolting works as intended, but causes some problems when cold booting the laptop (worrying about permanent damages). Hence, I reverted the changes and just unlocked Overclocking Lock and CFG Lock (just for fun  ). Waiting for a patch or something from Microsoft.


----------

