-
Notifications
You must be signed in to change notification settings - Fork 0
Tuning Arguments
This is the full argument reference. The argument names and SMU semantics match RyzenAdj.
Not every CPU supports every argument. Which arguments work depends on your CPU's socket group. The authoritative list for your machine is always:
zenmaster --helpIt prints only the supported arguments, grouped and with units. The tables below are the union across all families.
-
Unit: the unit of the integer value you pass.
mWis milliwatts,mAis milliamps, plusMHz,°C,mV, andsfor seconds. -
Type:
valuetakes=value,flagtakes no value. -
Negative values wrap to unsigned 32-bit (used by Curve Optimizer offsets like
--set-coall=-20). - Flag arguments ignore any value you pass.
| Argument | Unit | Type | Description |
|---|---|---|---|
--stapm-limit |
mW | value | Sustained Power Limit — STAPM LIMIT |
--fast-limit |
mW | value | Actual Power Limit — PPT LIMIT FAST |
--slow-limit |
mW | value | Average Power Limit — PPT LIMIT SLOW |
--ppt-limit |
mW | value | Platform Package Tracking power limit (desktop) |
--apu-slow-limit |
mW | value | APU PPT Slow limit for A+A dGPU platform — PPT LIMIT APU |
--stapm-time |
s | value | STAPM constant time |
--slow-time |
s | value | Slow PPT constant time |
| Argument | Unit | Type | Description |
|---|---|---|---|
--tctl-temp |
°C | value | Tctl Temperature Limit — THM LIMIT CORE |
--chtc-temp |
°C | value | CHTC Temperature Limit |
--apu-skin-temp |
°C | value | APU Skin Temperature Limit — STT LIMIT APU |
--dgpu-skin-temp |
°C | value | dGPU Skin Temperature Limit — STT LIMIT dGPU |
--skin-temp-limit |
°C | value | Skin Temperature Power Limit |
--apu-skin-tempand--dgpu-skin-tempare scaled by 256 internally (they are temperatures).--skin-temp-limitis a power limit and is not scaled.
| Argument | Unit | Type | Description |
|---|---|---|---|
--tdc-limit |
mA | value | Thermal Design Current Limit — TDC LIMIT |
--edc-limit |
mA | value | Electrical Design Current Limit — EDC LIMIT |
--vrm-current |
mA | value | VRM Current Limit — TDC LIMIT VDD |
--vrmmax-current |
mA | value | VRM Maximum Current Limit — EDC LIMIT VDD |
--vrmsoc-current |
mA | value | VRM SoC Current Limit — TDC LIMIT SOC |
--vrmsocmax-current |
mA | value | VRM SoC Maximum Current Limit — EDC LIMIT SOC |
--vrmcvip-current |
mA | value | VRM CVIP Current Limit — TDC LIMIT CVIP (VanGogh only) |
--vrmgfx-current |
mA | value | VRM GFX Current Limit — TDC LIMIT GFX |
--vrmgfxmax-current |
mA | value | VRM GFX Maximum Current Limit — EDC LIMIT GFX |
--psi0-current |
mA | value | PSI0 VDD Current Limit |
--psi0soc-current |
mA | value | PSI0 SoC Current Limit |
--psi3cpu-current |
mA | value | PSI3 CPU Current Limit |
--psi3gfx-current |
mA | value | PSI3 GFX Current Limit |
--prochot-deassertion-ramp |
n/a | value | Ramp time after PROCHOT deasserts; higher = tighter post-throttle limits |
| Argument | Unit | Type | Description |
|---|---|---|---|
--max-cpuclk |
MHz | value | Maximum CPU clock frequency |
--min-cpuclk |
MHz | value | Minimum CPU clock frequency |
--max-gfxclk |
MHz | value | Maximum GFX clock frequency |
--min-gfxclk |
MHz | value | Minimum GFX clock frequency |
--gfx-clk |
MHz | value | Forced GFX clock speed (Renoir only) |
--max-socclk-frequency |
MHz | value | Maximum SoC clock frequency |
--min-socclk-frequency |
MHz | value | Minimum SoC clock frequency |
--max-fclk-frequency |
MHz | value | Maximum Infinity Fabric (CPU↔GPU) frequency |
--min-fclk-frequency |
MHz | value | Minimum Infinity Fabric (CPU↔GPU) frequency |
--max-vcn |
n/a | value | Maximum Video Core Next (VCE) frequency |
--min-vcn |
n/a | value | Minimum Video Core Next (VCE) frequency |
--max-lclk |
n/a | value | Maximum Data Launch Clock frequency |
--min-lclk |
n/a | value | Minimum Data Launch Clock frequency |
--oc-clk |
MHz | value | Forced all-core clock speed (Renoir and up) |
--per-core-oc-clk |
MHz | value | Forced per-core clock speed (Renoir and up) |
--set-boost-limit-frequency |
n/a | value | Boost frequency ceiling |
--set-vmin-freq |
n/a | value | Minimum voltage frequency floor |
| Argument | Unit | Type | Description |
|---|---|---|---|
--enable-oc |
n/a | flag | Enable overclocking mode (Renoir and up) |
--disable-oc |
n/a | flag | Disable overclocking mode (Renoir and up) |
--oc-volt |
mV | value | Forced core VID: (1.55 − target_V) / 0.00625 (Renoir and up) |
--pbo-scalar |
n/a | value | Precision Boost Overdrive scalar |
--set-coall |
n/a | value | All-core Curve Optimizer offset (negative = undervolt) |
--set-coper |
n/a | value | Per-core Curve Optimizer offset |
--set-cogfx |
n/a | value | iGPU Curve Optimizer offset |
--set-gpuclockoverdrive-byvid |
n/a | value | Set GPU clock overdrive by VID |
| Argument | Unit | Type | Description |
|---|---|---|---|
--power-saving |
n/a | flag | Apply power-saving profile (AC-unplugged behavior) |
--max-performance |
n/a | flag | Apply max-performance profile (AC-plugged behavior) |
--enable-feature |
n/a | value | Enable a CPU/SMU feature by feature ID |
--disable-feature |
n/a | value | Disable a CPU/SMU feature by feature ID |
All --get-* arguments are flags (no value) and read a value back from the SMU instead of writing. The value is shown in the CLI and exposed as returned in --json and in the library apply() result.
| Argument | Description |
|---|---|
--get-pbo-scalar |
Query current PBO scalar value |
--get-sustained-power-and-thm-limit |
Query fused sustained power and thermal limit |
--get-overclocking-support |
Query overclocking support flags |
--get-max-cpu-clk |
Query maximum CPU clock limit |
--get-min-gfx-clk |
Query minimum GFX clock |
--get-max-gfx-clk |
Query maximum GFX clock |
--get-curr-gfx-clk |
Query current GFX clock |
--get-pbo-fused-power-limit |
Query PBO fused sustained power limit |
--get-pbo-fused-slow-limit |
Query PBO fused slow power limit |
--get-pbo-fused-fast-limit |
Query PBO fused fast power limit |
--get-pbo-fused-apu-slow-limit |
Query PBO fused APU slow power limit |
--get-pbo-fused-vrmtdc-limit |
Query PBO fused VRM TDC current limit |
--get-pbo-fused-vrmsoc-current |
Query PBO fused VRM SoC current |
--get-pbo-fused-tctl-temp |
Query PBO fused Tctl temperature |
--get-coper-options |
Query available per-core Curve Optimizer options |
--get-cogfx-options |
Query available iGPU Curve Optimizer options |
| Argument | Type | Description |
|---|---|---|
--disable-prochot |
flag | Disable PROCHOT thermal throttle signal |
--set-fll-btc-enable |
flag | Enable FLL BTC mode |
--set-vddoff-vid |
value | Set VDD-off VID |
--set-ulv-vid |
value | Set Ultra-Low Voltage VID |
--setcpu-freqto-ramstate |
flag | Lock CPU frequency to RAM state |
--stopcpu-freqto-ramstate |
flag | Release CPU frequency from RAM state lock |
- Power limits are milliwatts:
15000means 15 W. - Currents are milliamps:
40000means 40 A. - Temperatures are °C:
90means 90 °C. -
--oc-volttakes a VID, not a voltage. Convert with(1.55 − target_V) / 0.00625. For 1.2 V:(1.55 − 1.2) / 0.00625 = 56.
Start conservative and test for stability. See the FAQ and Troubleshooting if a value is rejected or the system becomes unstable.
PyPI · Report an issue · Releases · By HorizonUnix under GPL-3.0
Getting started
Monitoring
Developers
Help