-
Notifications
You must be signed in to change notification settings - Fork 0
Home
ZenMaster adjusts power management settings for AMD Ryzen CPUs and APUs on Linux, Windows, and macOS (AMD Hackintosh). It sets CPU power limits, temperature limits, VRM current limits, clock targets, voltages, and Curve Optimizer offsets directly through the CPU's System Management Unit (SMU): no BIOS, no reboot.
It's a pure-Python reimplementation of RyzenAdj: same --name=value command syntax, so existing commands and presets carry over, but you install it with pip and never need a compiler or a kernel build.
pip install zenmaster
sudo zenmaster --stapm-limit=15000 --fast-limit=20000 --tctl-temp=90ZenMaster is also an embeddable Python library, import zenmaster, with zero mandatory third-party dependencies on any of the three platforms.
| Hardware | Status |
|---|---|
| AMD Ryzen APUs (Zen 1 through Zen 5+) | Supported |
| AMD Ryzen Desktop CPUs (AM4 / AM5) | Supported |
| Steam Deck (Van Gogh) | Supported, including PM table |
| Intel | Not supported |
Requirements:
| Linux | Windows | macOS (Hackintosh) | |
|---|---|---|---|
| Python | 3.10+ | 3.10+ | 3.10+ |
| Privileges | root | Administrator | root |
| Driver |
ryzen_smu module or PCI direct access |
PawnIO | DirectHW.kext, or the kext-free IOPCIBridge path (tuning only) |
| Extra dependencies | None | None | None |
On Linux, PCI direct access works on most systems with no kernel module. ryzen_smu is only required when Secure Boot is enabled, because kernel lockdown blocks raw PCI access. See How ZenMaster Talks to the SMU for exactly why, on all three platforms.
- Installs with
pip, no cmake, libpci, or building from source - Same
--name=valuesyntax, so scripts and presets carry over unchanged - Uses PawnIO on Windows instead of WinRing0, which has known CVEs
-
--helplists only the arguments your CPU supports, not every possible option -
--tableshows a labeled sensor table,--sensorsa compact live view,--jsonmakes all of it scriptable -
--reapply=Nkeeps your settings applied so other software can't undo them - Works as a Python library on Linux, Windows, and macOS
- Runs on real Hackintosh hardware too, not just Linux/Windows, reading CPU identity straight off CPUID so a spoofed SMBIOS can't fool it
-
Installation: install on Linux, Windows, and macOS, including
ryzen_smu, PawnIO, and DirectHW setup - CLI Usage: every command-line option, with examples and output formats
- Tuning Arguments: the full argument reference, what each does, its unit, and which CPUs support it
-
PM Table and Monitoring:
--table,--sensors, and--dump-table - Library API: embedding ZenMaster in your own Python tools
- How ZenMaster Talks to the SMU: the mailbox protocol and how each OS reaches it
- Architecture: package layout, module responsibilities, opcode tables, CPU detection
- Troubleshooting: fixes for the common problems
- FAQ: short answers to common questions
Warning: ZenMaster writes directly to the CPU's System Management Unit. Wrong values can cause instability, throttling, or a hard lock. Use at your own risk.
PyPI · Report an issue · Releases · By HorizonUnix under GPL-3.0
Getting started
Monitoring
Developers
Help