Jump to content

For reasons, I need to keep Turbo Boost disabled but I want to dynamically enable it while booted into GNU/Linux. ThrottleStop is a great program on Windows, but I haven't found any similar software for GNU/Linux. Is modifying the MSR or MCHBAR or whatever registers the only option? I have no idea for which one to look for then.

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

cpupower

https://linux.die.net/man/1/cpupower

 

 

There are probably kernel parameters as well. I haven’t checked. Enabling turbo boost from a “disabled” in bios is not going to happen though. 

Edited by Levent

mY sYsTeM iS Not pErfoRmInG aS gOOd As I sAW oN yOuTuBe. WhA t IS a GoOd FaN CuRVe??!!? wHat aRe tEh GoOd OvERclok SeTTinGS FoR My CaRd??  HoW CaN I foRcE my GpU to uSe 1o0%? BuT WiLL i HaVE Bo0tllEnEcKs? RyZEN dOeS NoT peRfORm BetTer wItH HiGhER sPEED RaM!!dId i WiN teH SiLiCON LotTerrYyOu ShoUlD dEsHrOuD uR GPUmy SYstEm iS UNDerPerforMiNg iN WarzONEcan mY Pc Run WiNdOwS 11 ?woUld BaKInG MY GRaPHics card fIX it? MultimETeR TeSTiNG!! aMd'S GpU DrIvErS aRe as goOD aS NviDia's YOU SHoUlD oVERCloCk yOUR ramS To 5000C18! jellYfIn Client siDE TRanscoDinG

Link to post
Share on other sites

1 hour ago, Gat Pelsinger said:

For reasons, I need to keep Turbo Boost disabled but I want to dynamically enable it while booted into GNU/Linux. ThrottleStop is a great program on Windows, but I haven't found any similar software for GNU/Linux. Is modifying the MSR or MCHBAR or whatever registers the only option? I have no idea for which one to look for then.

To disable it, do either:
"echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo"

or 

"echo 0 > /sys/devices/system/cpu/cpufreq/boost"

 

Depends on which scaling driver you're using. Change the parameter to enable it instead.

FX6300 @ 4.2GHz | Gigabyte GA-78LMT-USB3 R2 | Hyper 212x | 3x 8GB + 1x 4GB @ 1600MHz | Gigabyte 2060 Super | Corsair CX650M | LG 43UK6520PSA
ASUS X550LN | i5 4210u | 12GB
Lenovo N23 Yoga

Link to post
Share on other sites

On: https://askubuntu.com/questions/337147/throttlestop-for-ubuntu

There was a thread, including a response from the creator of ThrottleStop, who gave some programming ideas, but later in the there was this response:

Highly edited, PLEASE READ THE ENTIRE THREAD
 

I came across the same problem and I found a solution which works for me.
You'll have to download cpufrequtils.
Run every command in Terminal: Note: The '-c' argument is for core number. If your CPU has four cores, run the given command for 0 through 3 and if your CPU has eight cores, then run the command for 0 through 7.

sudo cpufreq-set -c 0 -g performance
sudo cpufreq-set -c 1 -g performance
sudo cpufreq-set -c 2 -g performance
sudo cpufreq-set -c 3 -g performance
sudo cpufreq-set -c XX -g performance
sudo modprobe msr
sudo rdmsr 0x1FC

The XX here is the number of your core. After this step you'll get an output which you need to note down and then use in the next command.

sudo wrmsr 0x1FC XXXXX

Here, XXXXX is the output from the previous command execution.
Finally, to check if it has worked, run:

cpufreq-info

 

Link to post
Share on other sites

@Thomas4

 

I thought you were on to something but turns out our reply was totally unhelpful. I read the mentioned thread, and they are referring to the 0x1FC register which is the BD PROCHOT register. I want to toggle Turbo Boost. That is not working. I do have turbo disabled in firmware, but Throttlestop can still toggle turbo in Windows. I will look into the throttlestop cli that is mentioned there.

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

@Levent

On 5/18/2024 at 7:54 PM, Levent said:

Enabling turbo boost from a “disabled” in bios is not going to happen though.

 

5 hours ago, Gat Pelsinger said:

I do have turbo disabled in firmware, but Throttlestop can still toggle turbo in Windows.

 

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

Why not do the other way around? Turn on TBoost in BIOS and disable it in Windows. 

| Intel i7-3770@4.2Ghz | Asus Z77-V | Zotac 980 Ti Amp! Omega | DDR3 1800mhz 4GB x4 | 300GB Intel DC S3500 SSD | 512GB Plextor M5 Pro | 2x 1TB WD Blue HDD |
 | Enermax NAXN82+ 650W 80Plus Bronze | Fiio E07K | Grado SR80i | Cooler Master XB HAF EVO | Logitech G27 | Logitech G600 | CM Storm Quickfire TK | DualShock 4 |

Link to post
Share on other sites

@goatedpenguin

 

The isolcpus thing is good but not cpufrequtils. First of all, no matter which core I select, it gets applied to all the cores for some reason (monitoring through i7z). It doesn't like really solve the problem, if I put a heavy load on it, it will still turbo to max.

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

5 hours ago, xAcid9 said:

Why not do the other way around? Turn on TBoost in BIOS and disable it in Windows. 

Well it can't even survive the Windows boot for me to disable it in Windows. But that is not even the problem. I can have TB disabled in BIOS and have ThrottleStop enable it dynamically. I just want to do it in GNU/Linux. 

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

27 minutes ago, Gat Pelsinger said:

I just want to do it in GNU/Linux. 

Depends what driver you are using as to whether you can do this; many of the newer cpufreq* and scheduling drivers use hardware functions of the CPU to provide a "better alternative to software scaling", microcode will relay the available options (read: pstates) to the kernel/driver and this will inform your experience/options in userspace. But:

34 minutes ago, Gat Pelsinger said:

Well it can't even survive the Windows boot for me to disable it in Windows.

Under-clock it in the bios to handhold it's survival, but be warned, sometimes messing with the default clocks will turn off some functionality so may not have the desired result. 

If it doesn't work, post the processor and driver combo you are using so we can better look at the documentation and see if what you are asking can be done in userspace or needs some "creative hardware hacking".

Despite it seeming like "information overload" at first glance, the kernel.org driver documentation is concise and helpful, it's just not written for the average user, so be prepared to google a few acronyms to gain a proper understanding of what you have control over and what you don't.

Link to post
Share on other sites

29 minutes ago, Ralphred said:

Under-clock it in the bios

image.gif.6116639f8176647ad87b23a725384f22.gif

 

It's a laptop, not a custom PC for the firmware to be this generous 😩. Seriously, it hurts every time when someone makes me remind I am using an OEM machine and go "idiot, just go into your BIOS and change this" and I am here like I CAN'T do that DUDE cuz I am on a freaking OEM!!

 

Also, I am just using the stock intel_pstate driver and whatever. Have the intel-ucode loaded. I don't think all this should even be necessary. ThrottleStop on Windows works by changing some MSR register and I have to do the same on my machine but I have to pick the correct register. Or I might be wrong.

PLEASE MARK COMMENTS AS SOLUTION IF SATISFIED!!

bigger number better, makes me look cooler.

Link to post
Share on other sites

7 hours ago, Gat Pelsinger said:

I am just using the stock intel_pstate driver and whatever

It's the "whatever" you need to tell us if you want useful feedback, because no one can guess what information ThrottleStop is using to pick the right register when you don't share it. So interrogate the windows app you use because it does contain the data you need, then read the kernel docs and work out if you can do what you want in existing userspace or need to patch the kernel so you can make the "switch" available via sysfs.

Link to post
Share on other sites

On 5/21/2024 at 7:33 PM, Ralphred said:

It's the "whatever" you need to tell us if you want useful feedback, because no one can guess what information ThrottleStop is using to pick the right register when you don't share it. So interrogate the windows app you use because it does contain the data you need, then read the kernel docs and work out if you can do what you want in existing userspace or need to patch the kernel so you can make the "switch" available via sysfs.

I love how the answer is like go reverse engineer that windows thing you keep mentioning and make your own. 

Sudo make me a sandwich 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×