Live data from Hacker News

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

stanislas.blog

101–110 of 123 posts

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

#101
post #79

Hypothesis: it’s not the CPU, it’s the USB controller saturating the thermal mass. So instead of the CPU or GPU going bonkers, the body gets too hot and they lose thermal dissipation capacity for the normal usage and then overheat and then throttle. They go 100% on the graphs because the throttling reduces frequencies and then load becomes too heavy. Experiment other adapters and monitors.

> the body gets too hot and they lose thermal dissipation capacity for the normal usage

aka "thermal soaking"

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

#102

Earlier quoted context omitted.

I am writing this comment from a 2019 i9. I have to charge it from the right hand ports. I think that is dumb, but it did solve the issue. I have no idea how I came to that conclusion (i almost certainly read about it somewhere), but there were certainly a couple of weeks where it was driving me crazy. A dumb thing for sure. I still like macos better than windows and I'm heavily invested in a production workflow with…

It was definitely a relatively well known problem with the 2019 MBP on the internet at some point. I found a Reddit thread linking to a news article about this. https://www.reddit.com/r/mac/comments/vi3grj/you_should_char... It was so much of a problem that at work we added a check that you were charging from the right ports to our internal doctor script (think like `brew doctor`).

I help out with an emulation community. Any time anyone with a 2019 MBP comes in with issues, I stop them from giving any more details and just have them check this first.

99% of the time it works 100% of the time.

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

#103
post #94

Earlier quoted context omitted.

Switching which side I charge my 2019 mbp i9 effectively solved my throttling issues, so your premise might be correct as I understand it.

That's interesting, could you tell me more? Like which side and port (front/back) was throttling, which side and port was not? Were you using a power supply to charge or was the mbp connected to a display? Did it only throttle during charging or also during while fully charged? Thanks!

According to a response elsewhere on this thread, it's not an unknown problem and there are links to more specific answers than I care to write. But to answer your question, it throttled with either left-side thunderbolt ports, with nothing else plugged into the machine using the Apple-supplied charger. I cannot remember if this issue stopped when the device battery was at 100%.

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

#105
post #97
post #58

I had the 2019 Macbook Pro i9, so I think a function to determine thermal throttling could be written very simply: function isThermalThrottling() { return true; } Seriously, I loved that computer for the most part but I was a little annoyed that I paid a lot of money for the i9 CPU just to get worse performance than the i7.

I think it was just any laptop with i9 just bad CPU for a laptop. I had dell and swapped it as soon as was possible to i7. I think they just made those only because they knew there will be enough people thinking “bigger better CPU == better laptop” - and yeah seems like I am not the only one that got caught with that. But I also trusted that someone there did any testing…

On these MacBooks the VRR modules were particularly prone to overheating and throttling because of the GPU regardless of the CPU model.

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

#106
post #70

I really wish Apple uses Vapour Chamber cooling for next MacBook Air M5. On my MacBook Pro, I have come to the conclusion that Apple priorities low noise level over heat dissipation. And I have my Mac fan control to have a minimum fan speed.

Vapor chamber only helps with bursts of usage. It’s just that the heat gets transferred faster. Transferred where is the correct question to ask. To the aluminium body is the answer. Now, how much time it takes to heat that body completely (ie: to reach equilibrium with the environment) and once in equilibrium, how much joules (or watts) can the body dissipate into the environment without burning the person’s lap is the point they are optimizing for here.

If you have fans, then the heat transfer is solved, hence no vapor chamber needed, just a large copper plate to be that buffer and then wind takes heat away.

So, no magic here. Energy in must be equal to energy out.

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

#107
post #58

I had the 2019 Macbook Pro i9, so I think a function to determine thermal throttling could be written very simply: function isThermalThrottling() { return true; } Seriously, I loved that computer for the most part but I was a little annoyed that I paid a lot of money for the i9 CPU just to get worse performance than the i7.

I am writing this comment from a 2019 i9. I have to charge it from the right hand ports. I think that is dumb, but it did solve the issue. I have no idea how I came to that conclusion (i almost certainly read about it somewhere), but there were certainly a couple of weeks where it was driving me crazy. A dumb thing for sure. I still like macos better than windows and I'm heavily invested in a production workflow with…

My old 2015 MBP would lose internet if I had a display and charger plugged in at the same time.

Took awhile to diagnose that one.

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

#108
post #58

I had the 2019 Macbook Pro i9, so I think a function to determine thermal throttling could be written very simply: function isThermalThrottling() { return true; } Seriously, I loved that computer for the most part but I was a little annoyed that I paid a lot of money for the i9 CPU just to get worse performance than the i7.

I had the 2019 MacBook Pro i9 too. Applying thermal pads to the VRM module fixed the throttling problem. It was like a brand new computer, the one I thought I was purchasing.

After buying it, I regularly had throttling issues. Nothing seemed to help. I tried all the recommended tricks but wasn’t getting anywhere. (I had two external monitors and using adobe creative suite back then.)

I came across some forum posts about the VRM module not being able to cool and that was making the system think it was overheating. It sounded reasonable so I decided to give it a shot. I got the thermal pads, carefully opened the laptop and applied a few layers to the various components to make sure it was touching the case (this is what makes this mod work properly, heat transfer to the aluminum case.)

It worked like magic, it felt like a brand new computer after months of bad experiences.

Only side effect was that bottom case gets really hot (that heat needs to go somewhere) so I couldn’t comfortably use it on my lap. But I never regretted doing the mod for a second!

I retired what was my then favorite computer for an M3 MacBook Air with 24gb ram and couldn’t be happier. I still have fond memories of my 16 inch 2019 MacBook Pro, if you still use that computer, please do yourself a favor and at least look into adding thermal pads to the VRM modules.

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

#109
post #79

Hypothesis: it’s not the CPU, it’s the USB controller saturating the thermal mass. So instead of the CPU or GPU going bonkers, the body gets too hot and they lose thermal dissipation capacity for the normal usage and then overheat and then throttle. They go 100% on the graphs because the throttling reduces frequencies and then load becomes too heavy. Experiment other adapters and monitors.

I'm not sure if I entirely understand your hypothesis, but I don't think it's 100% on the hardware - I don't think it's due to the hardware of the hardware.

I also have an M2 Air and a few things seem to consistently make my machine get hot and chug and dump the battery. Idling with my machine plugged into my 4k 144hz monitor isn't an issue, but going on a Zoom call or having one too many video streams open while docked to the monitor will do it.

Is my USB controller doing more "work" when I have a video stream open? I don't think so.

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

#110
post #58

I had the 2019 Macbook Pro i9, so I think a function to determine thermal throttling could be written very simply: function isThermalThrottling() { return true; } Seriously, I loved that computer for the most part but I was a little annoyed that I paid a lot of money for the i9 CPU just to get worse performance than the i7.

I am writing this comment from a 2019 i9. I have to charge it from the right hand ports. I think that is dumb, but it did solve the issue. I have no idea how I came to that conclusion (i almost certainly read about it somewhere), but there were certainly a couple of weeks where it was driving me crazy. A dumb thing for sure. I still like macos better than windows and I'm heavily invested in a production workflow with…

> I am writing this comment from a 2019 i9.

Same here, but...

> I have to charge it from the right hand ports. I think that is dumb, but it did solve the issue.

I _had to_ do this for a while (around 2023, I think, not that it matters), but I no longer have to. I don't know what has changed, unfortunately; I haven't reinstalled anything, and I can't say I have uninstalled anything either. It's really weird...

Post reply on HN