HACKER Q&A
📣 amichail

How do you slow down a specific process enough to avoid fan noise?


Can this be done without access to the process source code? Can this be automated?

The process in question is Podcasts on macOS, which can cause fan noise while refreshing feeds.


  👤 brucethemoose2 Accepted Answer ✓
This is better addressed on the processor's end, as even if you "throttle" a process, your CPU is still going to turbo to a noisy state. In fact, it could make energy efficency worse by encouraging the CPU to run at higher clocks in short bursts (whereas it runs at slower, more efficient clocks during long constant loads).

How you do this depends on the OS and CPU. RyzenAdj, for instance, works on AMD processors on linux and windows.


👤 smoldesu
For the most part, your OS will probably govern the speed and temperature of your CPU. You can do certain things to point your OS in the right direction like nicing your program at a low value, but I don't think there's a "limit thread frequency" value or anything like that you're missing.

Edit: just read that this is about MacOS. IIRC, GCD will move certain programs to exclusively use your efficiency cores if you set their priority low enough. I forget how you do that exactly though, so you're kinda on your own.


👤 devmor
I'm not sure about a long running process, but off the top of my head I could imagine how to monitor a process and adjust its CPU usage for future runs.

It would very much depend on what kind of hardware you have, though. If the fans are PWM and if they have the RPM line enabled, you could potentially monitor the fan speed and use a utility like cpulimit.

Anything else I can think of would require overengineering like building a decibel meter and connecting it over serial or IP.


👤 PaulHoule
In Windows you can set the maximum CPU state which, if you set it low enough, means your machine will never spin up the fan very much. With a Dell laptop you can accomplish this by partially inserting the power plug such that the third connector that communicates the capability of the power supply doesn’t connect and your machine will be super-sluggish.