Skip to content

Latest commit

 

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hw-smi

A minimal, cross-compatible CPU/GPU telemetry monitor with accurate data directly from vendor APIs and beautiful ASCII visualization.

moritz@opencl-pc:~/hw-smi$ sudo bin/hw-smi --bars

moritz@opencl-pc:~/hw-smi$ sudo bin/hw-smi --graphs

Hardware/OS Support

Metric
(Windows/Linux)
CPUs
Win32//proc
 Nvidia GPUs 
NVML
   AMD GPUs   
ADLX/AMDSMI
  Intel GPUs  
SYSMAN
device name ✅/✅ ✅/✅ ✅/✅ ✅/✅
per-core/avg usage [%] ✅✅/✅✅ ✅✅/✅✅ ✅✅/✅✅ ✅✅/❎✅
memory bandwidth [MB/s] ❌❌/❌❌ ✅✅/✅✅ 🟨🟨/✅✅ ❎❎/❎❎
memory occupation [MB] ✅✅/✅✅ ✅✅/✅✅ ✅✅/✅✅ ✅✅/✅✅
temperature [°C] 🫠✅/✅✅ ✅✅/✅✅ ✅✅/✅✅ ❎✅/❎✅
power [W] ❌❌/❌❌ ✅✅/✅✅ ✅✅/✅✅ ❎✅/✅✅
fan [RPM] ❌❌/❌❌ ✅🟨/✅🟨 ✅✅/✅🟨 ✅🟨/🫠🟨
core clock [MHz] 🟨🟨/✅🟨 ✅✅/✅✅ ✅✅/✅✅ ✅✅/✅✅
memory clock [MHz] ❌❌/❌❌ 🫠🫠/🫠🫠 ✅✅/✅✅ ✅✅/🫠✅
PCIe bandwidth [MB/s] 🟨🟨/🟨🟨 ✅✅/✅✅ ❌❌/🫠✅ ❎✅/❎❎
Legend Description
AB/CD current value (Windows), B max value (Windows)
current value (   Linux   ), D max value (   Linux   )
supported and working
supported and working, but administrator/sudo permissions required
🟨 vendor API does not directly provide metric, but workaround/estimate/default possible
🫠 available but broken in vendor API
unavailable in vendor API and no suitable default value possible
API issues submitted

Compiling the Source Code

Windows

  • Download and install Visual Studio Community. In Visual Studio Installer, add:
    • Desktop development with C++
    • MSVC v142
    • Windows 10 SDK
  • Download and unzip hw-smi.
  • Open hw-smi.vcxproj in Visual Studio Community.
  • Compile by clicking the ► Local Windows Debugger button.
  • Go to hw-smi/bin/ folder and double-click hw-smi.exe.
  • Alternatively, run from CMD:
    hw-smi.exe
    hw-smi.exe --bars
    hw-smi.exe --graphs
    hw-smi.exe --log
    hw-smi.exe --help
  • Note that it will also work without administrator permissions. However, some telemetry counters on Intel GPUs are not available without administrator permissions.

Linux

  • Clone from GitHub:
    git clone https://github.com/ProjectPhysX/hw-smi.git && cd hw-smi
  • Compile:
    chmod +x make.sh
    ./make.sh
  • Run:
    sudo bin/hw-smi
    sudo bin/hw-smi --bars
    sudo bin/hw-smi --graphs
    sudo bin/hw-smi --log
    sudo bin/hw-smi --help
  • Note that it will also work without sudo. However, some telemetry counters on Intel GPUs are not available without sudo.

Logging Telemetry Data

  • Run hw-smi with the --log command-line option. This will write all telemetry data into a file hw-smi-YYYY-DD-MM-hh-mm-ss.log located next to the hw-smi executable.
  • The telemetry data in the file is formatted as follows:
                          , Intel Core i7-8700K                                                                         , NVIDIA TITAN Xp                                         
    Date       Time       ,   0,   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,  11, CPU, RAM    , Tmp, Clk , PCIe BW, GPU, BW   , VRAM   , Tmp, Pwr , Fan , CClk, MClk, PCIe  
    YYYY-MM-DD hh:mm:ss.ss,   %,   %,   %,   %,   %,   %,   %,   %,   %,   %,   %,   %,   %,      MB,  'C,  MHz,    MB/s,   %,  GB/s,      MB,  'C,    W,  RPM,  MHz,  MHz,   MB/s
    Hardware Specs        , 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,   16250,   ?, 5000,    3936, 100,   548,   12288, 100,  250, 5000, 1911, 1426,   3936
    2026-08-19 17:01:46.29,   0,   5,   0,   0,  11,   0,   5,   0,   0,   0,   0,   0,   4,    7953,   ?, 3696,       0,   0,     0,     163,  35,   16, 1150,  139,  101,      0
    2026-08-19 17:01:46.69,   8,   2,   2,  14,  14,   2,   8,   2,  26,   2,   8,   2,   3,    7952,   ?, 3696,       0,   0,     0,     163,  35,   16, 1150,  139,  101,      0
    2026-08-19 17:01:47.05,  10,   0,  10,   4,  22,   0,  10,   0,  10,   0,  16,   4,   7,    7946,   ?, 3696,       0,   0,     0,     163,  35,   16, 1150,  139,  101,      0
    2026-08-19 17:01:47.41,  12,  12,   0,  17,   0,   0,  12,   0,   6,   0,   0,  12,   8,    7940,   ?, 3696,       0,   0,     0,     163,  35,   16, 1150,  139,  101,      0
    2026-08-19 17:01:47.79,   8,   8,   8,  14,   0,   0,   8,   0,   0,   2,   2,   0,   8,    7930,   ?, 3696,       0,   0,     0,     163,  35,   16, 1150,  139,  101,      0
    

About

A minimal, cross-compatible CPU/GPU telemetry monitor with accurate data directly from vendor APIs and beautiful ASCII visualization.

Topics

Resources

Stars

305 stars

Watchers

4 watching

Forks

Releases

Contributors

Languages