A real-time system performance monitor for macOS, written in Go. Inspired by asitop — no sudo required.
- CPU — total usage bar, per-core grid; Apple Silicon shows P-core vs E-core averages
- GPU — device, renderer, and tiler utilization via
ioreg(works on Apple Silicon) - Memory — RAM and swap usage with sizes
- Disk I/O — read/write bytes per second across all disks
- Network — upload/download bytes per second
- Load averages — 1 / 5 / 15 minute
- macOS (Apple Silicon or Intel)
- Go 1.21+
git clone https://github.com/anitabendelja/atop
cd atop
go build -o atop .Or run directly:
go run .atop [flags]
Flags:
-i, --interval duration refresh interval (default 1s)
-h, --help help
Examples
atop # 1 second refresh
atop -i 500ms # 500 ms refresh
atop -i 2s # 2 second refreshPress q or Ctrl+C to quit.
| Metric | Source |
|---|---|
| CPU | gopsutil (host_processor_info) |
| GPU | ioreg -r -c IOAccelerator |
| Memory | gopsutil (vm_statistics64) |
| Disk I/O | gopsutil (IOKit) |
| Network | gopsutil (net_io_counters) |
| Load | sysctl vm.loadavg |
