From 152W to 86W idle — a 43% reduction in wall power, verified by hardware measurement. A power analysis and optimization toolkit for AMD Ryzen desktop systems that combines real-time hardware power measurement via a NETIO smart power socket with direct AMD SMU firmware control.
Features
- Measures actual wall power draw via NETIO 4KF smart socket JSON API
- Controls CPU power limits (PPT/TDC/EDC/HTC) through direct SMU firmware commands
- One-click PowerSaver and GamingMode profiles with before/after verification
- Custom-built ZenControl CLI tool (.NET 8 / C#) for bare-metal AMD SMU access via ZenStates-Core
- Python sensor reader using LibreHardwareMonitor via pythonnet
Why Not RyzenAdj?
RyzenAdj doesn't support desktop Zen 3 chips (Family 19h Model 33 = "unsupported"). This project builds a custom tool on ZenStates-Core v1.75 that talks directly to the SMU firmware via WinRing0, giving full control over power limits on chips RyzenAdj can't touch.
Tools
- PowerSaver.ps1 — Maximum power savings for normal work (disables NICs, caps CPU, sets aggressive SMU limits)
- GamingMode.ps1 — Maximum performance (full boost, stock SMU limits, ASPM off)
- ZenControl — Custom C# CLI built on ZenStates-Core for direct AMD SMU firmware access
- read_sensors.py — LibreHardwareMonitor sensor reader via pythonnet