Skip to content

QuixiAI/xpuitop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xpuitop — Intel GPU Monitor

An nvitop-style interactive terminal GPU monitor for Intel Arc and Data Center GPUs, built with Textual.

  XPUITOP  ◆  Intel GPU Monitor  ◆  4 GPU(s)         Tue Feb 04 14:23:01 2025
  ─────────────────────────────────────────────────────────────────────────────
  GPU 0  Arc(TM) Pro B60 Graphics  [0000:03:00.0]
  Temp:    42°C   Pwr:   23.5W   Freq:  2050MHz
  GPU  █████░░░░░░░░░░░░░░░░░░░░  20.3%  ▁▁▂▂▃▃▃▂▂▂▃▄▅▅▄▃▂▂▁
  MEM  ████████████░░░░░░░░░░░░░  2048/4096 MiB  ▁▁▂▃▄▅▆▆▆▆▅▅▅▅▅▅▅▅▅▅
  ─────────────────────────────────────────────────────────────────────────────
  Processes (sort: mem, press 'o' to cycle)
  GPU      PID  USER        MEM(MiB)  COMMAND
    0    12345  ubuntu        512.0  python3 train.py

Features

  • Live dashboard with configurable auto-refresh (default 2s)
  • Per-GPU cards showing utilization, memory, temperature, power, frequency
  • Braille history graphs (full mode) and sparkline graphs (compact mode)
  • Host CPU, memory, and swap monitoring
  • Process table with sorting, selection, and signal sending
  • Three display modes: auto, full, compact
  • Works with xpu-smi (Level Zero) — no NVIDIA dependency

Requirements

  • Intel GPU with Level Zero driver stack installed
  • xpu-smi CLI tool (part of the Intel GPU driver packages)
  • Python 3.10+

Installation

# Make sure xpu-smi works
xpu-smi discovery

# Install from source
pip install -e .

# Run
xpuitop
# or
python -m xpuitop

Usage

xpuitop [OPTIONS]

Options:
  -i, --interval SEC    Refresh interval in seconds (default: 2)
  -m, --mode MODE       Display mode: auto, full, compact (default: auto)
  -o, --only GPUS       Comma-separated GPU indices to monitor (e.g. 0,2)
  --ascii               Use ASCII-only characters (no Unicode)

Keybindings

Key Action
q Quit
r Force refresh
a Auto display mode
f Full display mode
c Compact display mode
o Cycle process sort (mem / pid / gpu)
h / ? Show help
t Show device tree
e Send signal to selected process
Up / Down Navigate process list

How It Works

The app shells out to xpu-smi for data:

  • xpu-smi discovery — device enumeration (name, memory, PCI address)
  • xpu-smi dump -d -1 -m 0,1,2,3,5,18 -n 1 — live telemetry (utilization, power, freq, temp, memory)
  • xpu-smi ps -j — GPU process list

It parses both JSON and CSV fallback formats for maximum compatibility across xpu-smi versions.

Debugging

XPUITOP_DEBUG=1 xpuitop
# Logs written to /tmp/xpuitop.log

License

MIT — inspired by nvitop.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages