explaingit

tlkh/asitop

4,562PythonAudience · developerComplexity · 2/5Setup · easy

TLDR

asitop shows live CPU, GPU, memory, and power stats for Apple Silicon Macs in the terminal, so you can see how hard your M1 or later chip is working in real time.

Mindmap

mindmap
  root((asitop))
    What it monitors
      CPU usage
      GPU usage
      Memory and swap
      Power draw
    Display
      Live terminal view
      Power history chart
      Clock frequencies
    Requirements
      Apple Silicon Mac
      macOS Monterey+
      sudo access
    Install
      pip install asitop
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Monitor CPU and GPU usage while running heavy workloads like machine learning or video editing on a Mac

USE CASE 2

Check real-time power consumption and clock speeds to understand performance during demanding tasks

USE CASE 3

Track memory and swap usage to see if your Mac is running out of RAM under load

Tech stack

Pythonpsutil

Getting it running

Difficulty · easy Time to first run · 5min

Must be run with sudo because it uses macOS powermetrics, which requires administrator access.

In plain English

asitop is a command-line performance monitoring tool for Apple Silicon Macs (the M1 and later chips). It shows live stats about how hard the processor, graphics, and memory are working, displayed in the terminal. The author built it because nothing similar existed for Apple Silicon at the time. The tool displays CPU utilization split by efficiency cores and performance cores, GPU utilization, current clock frequencies for both, memory usage including RAM and swap space, and power consumption for the CPU and GPU. It also shows a running chart of power draw and a rolling average, so you can see spikes over time rather than just a single instant reading. Some figures like maximum power limits are hardcoded estimates because Apple does not expose them through official channels on the system. Under the hood, asitop reads data from several macOS utilities. The main one is powermetrics, a built-in macOS tool that taps hardware performance counters. Because powermetrics needs administrator access, asitop must be run with sudo. It also pulls memory and swap stats from a Python library called psutil, reads CPU and core counts from sysctl, and checks GPU core count via system_profiler. Installation is done with pip, the standard Python package manager: pip install asitop. Once installed, you run it in the terminal with sudo asitop. Optional flags let you adjust how often the display refreshes, change the color theme, and set the window used for averaged readings. The README notes it only works on Apple Silicon Macs running macOS Monterey or later. asitop is lightweight by design and is meant to have minimal impact on the machine it is monitoring. It is released as an open Python project with no license specified in the README.

Copy-paste prompts

Prompt 1
How do I install and run asitop to monitor my Apple Silicon Mac's CPU and GPU usage in the terminal?
Prompt 2
Using asitop, how do I set a custom refresh interval and change the color theme from the command line?
Prompt 3
Show me how to use asitop to check whether my M1 Mac's performance cores are running at full speed during a machine learning training job
Prompt 4
How do I read the rolling power draw chart in asitop to identify when my Mac is hitting its power limits?
Open on GitHub → Explain another repo

← tlkh on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.