All Topics
All Topics
Technology
Technology
Design
Design
Programming
Programming
Science
Science
News
News
Gaming
Gaming
Entertainment
Entertainment
Business
Business
Finance
Finance
Sports
Sports
Health
Health
Food
Food
Travel
Travel
Art
Art
Music
Music
Books
Books
Education
Education
Politics
Politics
Personal
Personal
No algorithm. No AI slop. No ads. Just RSS. Pro-human. Indie writers. Real journalism. Open web. Chronological. Hand toasted.

Building MacThrottle: A macOS App to Detect Thermal Throttling

By

angristan

5mo ago· 11 min readen

Summary

A developer shares their journey building MacThrottle, a macOS menu bar app that detects when a Mac is thermal throttling. The project was inspired by noticing performance issues with an M2 MacBook Air when using demanding external displays. The article details the technical challenges of accessing macOS system metrics, exploring various APIs like IOKit, SMC, and powermetrics, and ultimately creating a functional app that monitors CPU performance states to detect throttling. The post serves as both a technical tutorial and personal development story.

Key quotes

· 4 pulled
I've been very happy with my M2 MacBook Air for the past few years. However, when using an external display, especially a very demanding one like a 4K 120Hz display, I've noticed it started struggling more.
Since it lacks fans, you can't hear it struggling, but you can feel it as everything becomes very slow or unresponsive: that's when thermal throttling kicks in.
I know it's thermal throttling because I can see in iStat Menus that my CPU usage is 100% while the power usage in watts goes down.
This is the story about how I built MacThrottle, a menu bar app that tells me when my Mac is thermal throttling, and the journey to find the right macOS APIs.
Snippet from the RSS feed
How I built MacThrottle, a menu bar app that tells me when my Mac is thermal throttling, and the journey to find the right macOS APIs.

You might also wanna read