Hw-smi

Hi L1 folks!

I want to share an open-source tool with you: ProjectPhysX/hw-smi on GitHub

Peek 2026-04-12 09-40

Peek 2026-04-12 09-41

hw-smi is a hardware monitoring tool that shows CPU/GPU load and lots of GPU metrics, some of which no other tool will tell you: how much VRAM/PCIe bandwidth an application/game pulls. This is super helpful in identifying bottlenecks. I’m getting the data directly from vendor APIs: NVML, ADLX, AMDSMI, SYSMAN.

The best thing though: hw-smi works with all CPUs and all Nvidia/AMD/Intel GPUs, on both Windows and Linux! Yes you can even monitor Nvidia/AMD/Intel GPUs at once within the same system. Gifs above show FluidX3D CFD benchmark running across all 3 GPUs via OpenCL and pooling their VRAM. Have fun!

Kind regards,

Moritz

6 Likes

after the amd-smi / rocm-smi debacle, this looks really neat!!!

have you heard about siomon? GitHub - level1techs/siomon · GitHub it integrates with amd hsmp to pull fabric etc bandwidth, but we dont have much on the gpu telemetry side. YET!!

ps welcome!

Very cool! Fancy charts!

Any dependencies we should know about? I’m getting a:

terminate called after throwing an instance of ‘std::__ios_failure’
what(): basic_filebuf::underflow error reading the file: No data available
Aborted

after compiling for Intel GPUs on Ubuntu 24.04. I kinda wanna switch to this and dump all the other top tools.

Hi @SUPEROXIDES, I have just fixed the __ios_failure issue. On Linux the CPU counters are collected from reading /proc files, and the file reading on some Linux systems had failed due to an exception thrown that shouldn’t even exist.

Please pull latest update, and get back to me if anything doesn’t work. Thanks!

1 Like

Hi @wendell I did not know siomon, that looks cool! I love the one-liner column charts with ANSI block characters! :vulcan_salute::star_struck: You should add some GitHub topics/tags to the repo to make it more visible!

I had decided to go with only reduced ASCII symbols as they are univerally compatible. ANSI, or even just extended ASCII, won’t work over SSH in WSL, or in Windows at all. :vulcan_salute::melting_face::window:

1 Like

It’s up ‘n’ running now, lookin’ good.

It even works with integrated memory, unlike nvtop. Though, the usage percentage, both bandwidths and the temperatures don’t seem to be getting picked up. Below’s a side-by-side with it and nvtop:

Would you rather this just be put up as a Github issue?