Live data from Hacker News

Building a macOS app to know when my Mac is thermal throttling

stanislas.blog

31–40 of 123 posts

Re: Building a macOS app to know when my Mac is thermal throttling

#33
post #2

Seems like good work. From what I've heard developing on MacOS has not gotten easier over the years. I do question the point, though. I suppose there's merit in knowing if your configuration causes thermal throttling, but what are you able to do about it? There's no fan profile to tweak or anything. Can you undervolt them?

[deleted]

Re: Building a macOS app to know when my Mac is thermal throttling

#34
post #18

Earlier quoted context omitted.

An open question on fan curves Environment: I am currently playing with a pid control function for my gpu fan, that is instead of saying "map temp x to fanspeed y"(fan curve) say "set fan to speed needed for temp z"(pid control) Question: is there a reason pid type control is never a thermal option? Or put another way, is there something about the desired thermal characteristics of a computer that make pid control un…

> "set fan to speed needed for temp z"(pid control) Why though? I generally don't care about the specific temperatures of my CPU and GPU, just that they don't get too warm, so for the CPU (AIO) I basically have "0% up until 45C, then increment up to 100% when it hits 90C" and the same for the GPU except it's always at 10%. I guess I could figure out target temperatures, and do it the other way, but I'm not sure what…

In my case the gpu fan was not changing speed automatically, (something, something, linux) which I discovered after an embarrassingly long time of poking at other things trying to figure out why my system was crashing so much. And now instead of doing the sane thing and figuring out how to get the fan speed map to work, I thought about it and came to this conclusion "I want my temps to be set value, say 45C, why not use a closed loop controller to find the fan speed necessary for that temp at any load?"

And now am about halfway through building pid fan control software and a janky gpu temp simulator so I can get some intuition on tuning the pid parameters before I set it on my actual gpu. you know, the fun part of computing. But now I am worried that perhaps there is a real reason nobody does it this way.

Re: Building a macOS app to know when my Mac is thermal throttling

#35
post #18

Earlier quoted context omitted.

An open question on fan curves Environment: I am currently playing with a pid control function for my gpu fan, that is instead of saying "map temp x to fanspeed y"(fan curve) say "set fan to speed needed for temp z"(pid control) Question: is there a reason pid type control is never a thermal option? Or put another way, is there something about the desired thermal characteristics of a computer that make pid control un…

> "set fan to speed needed for temp z"(pid control) Why though? I generally don't care about the specific temperatures of my CPU and GPU, just that they don't get too warm, so for the CPU (AIO) I basically have "0% up until 45C, then increment up to 100% when it hits 90C" and the same for the GPU except it's always at 10%. I guess I could figure out target temperatures, and do it the other way, but I'm not sure what…

This could be total nonsense and I am definitely out on a limb here, but I remember from my amateur crypto mining days (almost 15 years ago wow) that keeping everything relatively consistent is better for the longevity of your hardware (GPU/CPU mainly). Some people obsessed over getting temps as low as possible but that’s not very productive, diminishing returns and all of that. There is just generally a healthy temperature to keep things operating at most of the time, coupled with how hard you push the component in question (while not putting too much strain on your fans either). Basically: swinging/fluctuating is not good, consistency is good.

Again though I could be totally off. I just remember that being spread around as “conventional wisdom.”

Re: Building a macOS app to know when my Mac is thermal throttling

#36

My 2017 macbook is basically brick. Crazy how just opening chrome sets off fans like a jet engine. How much cpu can checking gmail really use? Foolish me is considering buying a new macbook this year. I have no choice because Apple and Microsoft will do everything in their power to ship the shittiest personal computing products every year.

The butterfly keyboard of that era was a large enough signal, to me, that high quality engineering results were compromised.

They produced a laptop that you can't type efficiently on?? That misses key strokes?! I had to slow my typing on those keyboards!

So, imagine the incredible contempt I have had for Apple for failing such a basic delivery. Still, their new silicon machines managed to turn my opinion around -- quite the 180. The speed improvement is genuinely remarkable, and the modern build quality otherwise seems excellent to me.

It's worth another try imo.

Re: Building a macOS app to know when my Mac is thermal throttling

#37

Site appears to be hugged to death, repo is: https://github.com/angristan/MacThrottle

Oops, I fixed it, I have not very important Cloudflare Workers in front of the blog (which is on Cloudflare Pages) and somehow they were in fail closed mode and not fail open :(

Re: Building a macOS app to know when my Mac is thermal throttling

#38
post #18

Earlier quoted context omitted.

> but what are you able to do about it? On Macbooks with fans, I started tuning my fan curve with iStat Menus ( https://bjango.com/help/istatmenus7/fans/#custom-fan-curve ) because I noticed the default curve was lagging behind and thermal throttling kicked in before the fan even reach max speed. For Apple Silicon specifically, I recently discovered that there is a "high power mode" ( https://support.apple.com/en-us/…

An open question on fan curves Environment: I am currently playing with a pid control function for my gpu fan, that is instead of saying "map temp x to fanspeed y"(fan curve) say "set fan to speed needed for temp z"(pid control) Question: is there a reason pid type control is never a thermal option? Or put another way, is there something about the desired thermal characteristics of a computer that make pid control un…

PID loops work best when you have active control for both heating and cooling. PIDs are also best when you have a single optimal point you’re aiming at, there’s a kind of fundamental mismatch here in that there isn’t really a “too cold” for your system, you’re just aiming to keep the system below an upper limit while hopefully keeping fan noise to a minimum (otherwise you’d just send it and run at max 24/7).

Re: Building a macOS app to know when my Mac is thermal throttling

#39
post #34

Earlier quoted context omitted.

> "set fan to speed needed for temp z"(pid control) Why though? I generally don't care about the specific temperatures of my CPU and GPU, just that they don't get too warm, so for the CPU (AIO) I basically have "0% up until 45C, then increment up to 100% when it hits 90C" and the same for the GPU except it's always at 10%. I guess I could figure out target temperatures, and do it the other way, but I'm not sure what…

In my case the gpu fan was not changing speed automatically, (something, something, linux) which I discovered after an embarrassingly long time of poking at other things trying to figure out why my system was crashing so much. And now instead of doing the sane thing and figuring out how to get the fan speed map to work, I thought about it and came to this conclusion "I want my temps to be set value, say 45C, why not…

Aren't you ultimately gonna have to figure out why you cannot change the speed on the GPU, regardless of the approach? And then you're just back at square one?

I think no one is doing it that way, because there is simply no need for it. Sure, when I'm 3D printing some material it sometimes need the heatbed to be exactly 45C or whatever, but why would I care about the specific temperature of my GPU? As long as it's not throttled when GPU utilization is at 100%, I'm good to go.

KISS :)

Post reply on HN