How to auto disable C1E w/ script?

USMC2Hard4U

Supreme [H]ardness
Joined
Apr 4, 2003
Messages
6,157
Hello all - Not sure where this goes but I need some help

I just got a Lenovo Thinkstation P410 (Broadwell - E Xeon) but there is no option to disable C1E in the BIOS and therefor I am getting some fluctuation in core speed while in Windows. I need max clock speed for low latency application this thing will be running. I am able to turn off C1E via RealTemp with a simple uncheck, and clock speed ramps up to max. But its a manual process, and upon reboot, C1E comes back.

What is this checkmark doing in Windows? Is there a reg key I can perm change? If not, anyway I can do this with powershell or script something out to do this upon reboot?


Janky pics from my phone, for reference:
 

Attachments

  • IMG_0776.JPG
    IMG_0776.JPG
    181.5 KB · Views: 86
  • IMG_0777.JPG
    IMG_0777.JPG
    176.7 KB · Views: 89
  • IMG_0778.JPG
    IMG_0778.JPG
    191.1 KB · Views: 71
Just change the windows power plan to performance mode with 100% minimum processor state and the CPU will stay always at max clock 100% of the time.
 
Just change the windows power plan to performance mode with 100% minimum processor state and the CPU will stay always at max clock 100% of the time.

In my experience, this doesn't work at all. Even with this changed to always 100% I still got throttling until I disabled it in the bios.
 
Just change the windows power plan to performance mode with 100% minimum processor state and the CPU will stay always at max clock 100% of the time.

Negative, this did not work.
 

Attachments

  • IMG_0783.JPG
    IMG_0783.JPG
    187 KB · Views: 108
C1E is controlled by a single bit in the CPU. You cannot access registers in the CPU with a simple script.

Have you tried using ThrottleStop? It was written by the same guy that wrote RealTemp. (me)

The ThrottleStop Guide

The latest version should correctly support your Broadwell Xeon and ThrottleStop has the same option to toggle the C1E bit. Once you clear the C1E box and Save your settings, every time you run ThrottleStop, it should disable C1E for you. RealTemp lets you toggle C1E but it does not have the ability to save this option for future use.

You can add ThrottleStop to your Windows startup sequence using the Task Scheduler. The second post in the Notebook Review forum explains this. Just remember to use the when I log on option.

ThrottleStop also has another option that might be useful for you. If you do not want ThrottleStop running in the background all the time then add this option to the ThrottleStop.INI file.

ExitTime=5

That line forces ThrottleStop to automatically exit approximately 5 seconds after it starts. This gives the program plenty of time to setup your CPU and disable C1E. This program can also report if your CPU is using any of the deeper C States like C3 / C6 or C7. It is a popular program in the laptop community but has not caught on too much with desktop users. On desktops, these sort of changes are usually made in the bios but obviously, that is not an option for you.

Let me know if you need any help with this. The Print Screen button on your keyboard will take a snapshot of your screen and store it in the Windows Clipboard. After that, open up Paint, select Paste and then crop it however you like. If you only want an image of a single app that is running on your computer, hold down the ALT key before pushing the Print Screen button to take a snapshot.
 
Edit: ThrottleStop 8.20 (which you linked) works. Following your process now..
 
Last edited:
Did you download ThrottleStop 8.20 from here?

ThrottleStop_820.zip (622.13KB) - SendSpace.com

C1E is controlled by a single bit in the CPU. You cannot access registers in the CPU with a simple script.

In Windows, the only way to access the CPU registers is through a driver. RealTemp and ThrottleStop both use the WinRing0 driver for this.

Edit - Bed time here. I will check back tomorrow to see how things worked.
 
Last edited:
Unclewebb - This worked and this is the only thing to have worked thus far. Thank you SO much. Infinate +1's for you, your software and process. In task scheduler I chose to start upon bootup and not login and it worked just as well, even being hidden when a user logged in.

this is exactly perfect
 
you might want to look into disabling core parking as well if you need maximum performance and lowest possible latancy

You can use my program " Project Mercury"

www.techcenter.dk/Mercury.exe


Disabling Core parking has shown overall speedups in benchmarks (cinebench 7-zip winrar)
 
Look at the parameters for start.exe. Some examples of launching a program with high or realtime priority:

start.exe /high /b programname.exe

or if it's really, really, really about latency:
start.exe /realtime /b programname.exe

C1E doesn't affect a process that actually running and utilizing CPU core(s). If your fear is that you're losing performance, you're not.
 
USMC2Hard4U - Most popular monitoring apps do not give you any indication if C1E is enabled or not. Great to hear that you found 2 apps that tell it like it is and that your problem is solved. ThrottleStop should be showing the same multiplier across all threads whether idle or fully loaded. If ThrottleStop is left running in the background, it should also take care of C1E when you resume from stand by or hibernate modes.
 
Back
Top