Hi all đź‘‹
I picked up a DGX Spark and wanted a quick “what is my Spark doing right now” view — GPU, the Grace ARM CPU, memory, network, disk, and my containers — without standing up a full Prometheus + Grafana stack. I couldn’t find something lightweight and Spark-aware, so I built one and open-sourced it.
What it is
- One Docker Compose service. No database, no cloud, no agent daemon, no frontend framework, no CDN — just FastAPI + vanilla HTML/CSS/JS.
- Monitors: NVIDIA GPU (utilization, temp, power, VRAM where the driver exposes it), host CPU including Grace ARM frequency/temperature, RAM & swap, per-interface network rates, per-disk I/O, and Docker containers.
- Demand-driven: it runs no background collector and reads metrics only when a browser asks. Idle overhead is effectively zero, and any category can be disabled at the source in Settings.
- Light / dark / system themes, chart or text views, mobile-friendly.
Footprint (measured on the Spark, GB10)
- ~190 MB image, ~42 MiB RAM, ~0.2% of one core when idle.
- For reference, I measured the standard DCGM Exporter + Prometheus + Grafana stack on the same Spark at ~600 MiB RAM across 3 always-on containers and ~2.5 GB of images — roughly 14× the memory and 13× the disk. That stack does more (history, alerting, the full DCGM field set); this one is a live-only glance at a single box.
Security model (it touches host data, so this matters)
- Read-only host
/procmounts, a read-only Docker socket, and host networking for real interface counters. - Runs non-root,
cap_drop: ALL,no-new-privileges, read-only root filesystem. - Binds only the interfaces you name — e.g. loopback plus your WireGuard/Tailscale IP — not
0.0.0.0. There is no authentication, so it’s meant for a trusted network. - GPU access works via the NVIDIA Container Toolkit runtime or CDI (auto-detected); CDI works on GB10.
Install (one command)
Prebuilt, versioned ARM64 image from GHCR; the installer pulls a checksum-verified deployment bundle (it does not clone or compile on the Spark):
curl -fsSL https://raw.githubusercontent.com/singhangadin/DGX-Spark-Dashboard/main/install.sh | sh
Then open http://localhost:8787. Installer source: DGX-Spark-Dashboard/install.sh at main · singhangadin/DGX-Spark-Dashboard · GitHub
Notes
- Apache 2.0 licensed.
- This is an independent community project — not affiliated with or endorsed by NVIDIA.
- It’s early and I’m actively smoothing rough edges, so issues, feedback, and PRs are very welcome. If you run it on your Spark, I’d love to hear what’s missing or what reads wrong for GB10.
Thanks for taking a look! 🙏
