A performance monitoring CLI tool for Ubuntu inspired by asitop for Mac, with added volume transfer speed monitoring capabilities.
- Volume Transfer Speed Monitoring: Real-time read/write speed tracking per drive
- System Monitoring: GB10 GPU, CPU, memory, and network statistics
- Real-time Display: Interactive terminal interface with customizable update intervals
- Lightweight: Minimal dependencies, uses native Linux
/procfilesystem - Per-Drive Performance: Detailed breakdown of I/O performance for each storage device
Download the .deb package and install:
wget https://github.com/GigCoder-ai/dgxtop/blob/main/deb_build/dgxtop_1.0.0-1_all.deb
sudo apt install ./dgxtop_1.0.0-1_all.debThat's it. Dependencies are installed automatically.
dgxtopdgxtop --interval 0.5 # Update every 0.5 seconds
dgxtop -i 2.0 # Update every 2 seconds
dgxtop --version # Show version informationq- Quit the application+- Speed up update interval-- Slow down update interval
dgxtop/
├── __init__.py # Package initialization
├── main.py # Main application entry point
├── disk_monitor.py # Disk I/O monitoring (/proc/diskstats)
├── system_monitor.py # CPU, memory, network monitoring
├── gpu_monitor.py # GPU monitoring (nvidia-smi)
└── display_manager.py # Terminal UI management
The tool calculates transfer speeds by reading /proc/diskstats at regular intervals:
Read/Write Bytes per Second = (Δsectors) × 512 bytes / Δtime
Where:
Δsectors= Difference in sectors read/written between measurements512 bytes= Standard sector size in LinuxΔtime= Time interval between measurements
- Disk Statistics:
/proc/diskstats - CPU Statistics:
/proc/stat - Memory Statistics:
/proc/meminfo - Network Statistics:
/proc/net/dev - GPU Statistics:
nvidia-smi
- Python 3.8+
- DGX Spark with NVidia Ubuntu
- curses (usually included with Python)
git clone https://github.com/gigcoder-ai/dgxtop.git
cd dgxtop
sudo apt install debhelper dh-python python3-all python3-setuptools dpkg-dev
dpkg-buildpackage -us -uc -b
sudo apt install ../dgxtop_1.0.0-1_all.debgit clone https://github.com/gigcoder-ai/dgxtop.git
cd dgxtop
docker run --rm -v "$(pwd)":/workspace ubuntu:24.04 bash -c "
apt-get update > /dev/null 2>&1 &&
apt-get install -y debhelper dh-python python3-all python3-setuptools dpkg-dev > /dev/null 2>&1 &&
mkdir -p /tmp/build_area/dgxtop && cp -r /workspace/* /tmp/build_area/dgxtop/ 2>/dev/null || true &&
cd /tmp/build_area/dgxtop && dpkg-buildpackage -us -uc -b &&
mkdir -p /workspace/deb_build && cp /tmp/build_area/*.deb /workspace/deb_build/
"
# Output: deb_build/dgxtop_1.0.0-1_all.debAPACHE 2.0 License - see LICENSE file for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
While inspired by the original asitop for Mac, this DGX Spark version:
- Uses Linux's
/procfilesystem instead of macOSpowermetrics - Focuses on volume transfer speed monitoring per drive
- Provides a more generalized system monitoring approach
- Add process monitoring
- Implement alerting thresholds
- Add configuration file support
- Create systemd service option
- Add network interface specific monitoring
- Implement logging functionality