Apple Silicon processors don't provide an easy way to see live power consumption. I was interested in this information while testing local LLM models. asitop
is a nice and simple TUI to quickly see current metrics, but it reads data from powermetrics
and requires root privileges. macmon
uses a private macOS API to gather metrics (essentially the same as powermetrics
) but runs without sudo. π
- π« Works without sudo
- β‘ Real-time CPU / GPU / ANE power usage
- π CPU utilization per cluster
- πΎ RAM / Swap usage
- π Historical charts + avg / max values
- π‘οΈ Average CPU / GPU temperature
- π¨ Switchable colors (6 variants)
- πͺ Can be rendered in a small window
- π¦ Written in Rust
brew install vladkens/tap/macmon
-
Install Rust toolchain
-
Clone the repo:
git clone https://github.com/vladkens/macmon.git && cd macmon
- Build and run:
cargo run -r
- (Optionally) Binary can be moved to bin folder:
sudo cp target/release/macmon /usr/local/bin
Usage: macmon [OPTIONS] [COMMAND]
Commands:
raw Print metrics in JSON format β can be used for piping
debug Print debug information
help Print this message or the help of the given subcommand(s)
Options:
-i, --interval <INTERVAL> Update interval in milliseconds [default: 1000]
-h, --help Print help
-V, --version Print version
Controls:
c - change color
v - switch charts view: gauge / sparkline
q - quit
We love contributions! Whether you have ideas, suggestions, or bug reports, feel free to open an issue or submit a pull request. Your input is essential in helping us improve macmon
πͺ
macmon
is distributed under the MIT License. For more details, check out the LICENSE.
- tlkh/asitop β Original tool. Python, requires sudo.
- dehydratedpotato/socpowerbud β ObjectiveC, sudoless, no TUI.
- op06072/NeoAsitop β Swift, sudoless.
- graelo/pumas β Rust, requires sudo.
- context-labs/mactop β Go, requires sudo.
PS: One More Thing... Remember, monitoring your Mac's performance with macmon
is like having a personal trainer for your processor β keeping those cores in shape! πͺ