Skip to main content

Advanced system monitor for Apple Silicon Macs with per-core CPU tracking

Project description

vtop 🖥️

Advanced System Monitor for Apple Silicon Macs

A beautiful, real-time system monitoring tool designed specifically for Apple Silicon (M1/M2/M3/M4) Macs. Monitor every CPU core, GPU, memory, storage, and more—all from your terminal.

Python macOS License PyPI

✨ Features

CPU Monitoring

  • Per-core history charts for both E-cores (Efficiency) and P-cores (Performance)
  • Real-time frequency tracking for each core
  • Total CPU usage with cluster breakdown

GPU Monitoring

  • GPU utilization percentage and frequency
  • Historical usage chart

Memory & Storage

  • RAM usage with percentage
  • Swap usage tracking
  • SSD usage (shows actual available space like Finder)
  • Memory Pressure indicator (Normal/Moderate/High)

Power Consumption

  • CPU power draw with avg/peak tracking
  • GPU power draw with avg/peak tracking
  • Total system power consumption
  • Thermal throttling status

System Information

  • Thermal status
  • System uptime
  • Load average (1/5/15 min)
  • Disk I/O (read/write speeds)
  • Network I/O (download/upload speeds)
  • Battery status (percentage, charging state, time remaining)
  • Top CPU-consuming processes

📸 Screenshot

vtop screenshot

🚀 Installation

From PyPI (recommended)

pip install vtop

From GitHub

pip install git+https://github.com/filippovicidomini/vtop.git

From source

git clone https://github.com/filippovicidomini/vtop.git
cd vtop
pip install .

Development install

git clone https://github.com/filippovicidomini/vtop.git
cd vtop
pip install -e .

📖 Usage

vtop requires sudo to access power metrics:

sudo vtop

Options

Option Default Description
--interval 1 Refresh interval in seconds
--color 2 Color theme (0-8)
--avg 30 Window for averaged values (seconds)

Examples

# Default usage
sudo vtop

# Update every 2 seconds
sudo vtop --interval 2

# Use a different color theme
sudo vtop --color 5

Press Ctrl+C to exit.

🔧 Requirements

  • macOS with Apple Silicon (M1, M2, M3, M4 series)
  • Python 3.8+
  • Terminal with Unicode support

Dependencies

  • dashing - Terminal UI library
  • psutil - System monitoring library

🏗️ Architecture

vtop/
├── vtop.py      # Main application and UI layout
├── parsers.py   # Parsing powermetrics output
├── utils.py     # Utility functions and data gathering
└── __init__.py

🤝 Contributing

Contributions are welcome! Feel free to:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • Inspired by asitop by tlkh
  • Built with dashing terminal UI library

📊 Comparison with other tools

Feature vtop htop asitop
Per-core history
GPU monitoring
Power consumption
Memory pressure
Battery status
Top processes
Disk I/O
Network I/O
Apple Silicon optimized

Made with ❤️ for Apple Silicon

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vtop-1.0.1.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vtop-1.0.1-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file vtop-1.0.1.tar.gz.

File metadata

  • Download URL: vtop-1.0.1.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for vtop-1.0.1.tar.gz
Algorithm Hash digest
SHA256 09e8df0e00f0578c9e043b94dc04a2426574eccb911ff76086680334e73d0823
MD5 7de877eac4a7e35d7229708a5711d22b
BLAKE2b-256 72122d2edd3cfba122960101a113416581b0d2b5a3a98e19f5130fac90f1eff7

See more details on using hashes here.

File details

Details for the file vtop-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: vtop-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for vtop-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 29e4ef3d9d897349b069b8debdc876d27727274f823854ea4df88437dc8abbee
MD5 753232ec6e66ca59c12f0ef8d10d539f
BLAKE2b-256 934a0f06dedb1c77395fefebb4cb201e3ff84f52ccc0a903cb08e473d97c03c7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page