Configuration Guide
The intel-undervolt
tool is configured via a single file located at /etc/intel-undervolt.conf
. This page details all the available configuration directives.
The file uses a simple command value1 value2 ...
syntax.
enable
- Elogind Triggers
This option controls whether the elogind
sleep script is active.
- Syntax:
enable [yes/no]
- Description: If set to
yes
, theelogind
script will runintel-undervolt apply --trigger
when the system resumes from sleep. If set tono
, the script will do nothing. This is only relevant if you have enabled elogind support during installation. - Default:
no
enable yes
undervolt
- CPU Voltage Offset
Applies a negative voltage offset to a specific CPU voltage plane.
- Syntax:
undervolt index 'display_name' value
- Parameters:
index
: An integer representing the voltage plane (0-4 are typically used).'display_name'
: A descriptive name in quotes (used for readability, not by the tool).value
: The undervolt value in millivolts (mV). Should be zero or negative.
- Common Indexes:
0
: CPU Core1
: Intel GPU2
: CPU Cache3
: System Agent4
: Analog I/O
# Undervolt CPU Cache by 50.5 mV
undervolt 2 'CPU Cache' -50.50
power
- Power Limits
Alters the long-term (PL1) and short-term (PL2) power limits for a specific power domain.
- Syntax:
power domain short_term_value long_term_value
- Parameters:
domain
: The power domain. Currently, onlypackage
is supported.short_term_value
/long_term_value
: The power limit value with an optional time window and enabled/disabled state.
- Value Format:
POWER[/TIME][:enabled|:disabled]
POWER
: Power limit in Watts (integer).TIME
: (Optional) Time window in seconds (float). If omitted, the hardware default is used.:enabled
/:disabled
: (Optional) Explicitly enable or disable the limit.
# Set PL2 to 45W (default time) and PL1 to 35W (default time)
power package 45 35
# Set PL2 to 45W for 2ms and PL1 to 35W for 28 seconds
power package 45/0.002 35/28
# Disable PL2 and enable PL1
power package 45:disabled 35:enabled
tjoffset
- Temperature Offset
Alters the critical temperature offset (TjMax). The CPU will begin thermal throttling at TjMax + offset
.
- Syntax:
tjoffset value
- Description: The value is subtracted from the CPU's default max temperature. For a CPU with a TjMax of 100°C,
tjoffset -15
will set the new throttle point to 85°C. - Parameters:
value
: A negative integer representing the offset in degrees Celsius.
# Set the thermal throttle point 20°C lower than the default
tjoffset -20
hwphint
- HWP Preference Switch
Configures dynamic switching of the Energy vs. Performance Preference hint for Hardware P-States (HWP). This feature is only active when running in daemon mode.
- Syntax:
hwphint mode algorithm load_hint normal_hint
- Modes:
switch
: The default mode. The tool will switch betweenload_hint
andnormal_hint
based on the algorithm's result and the current hint.force
: The tool will always enforce eitherload_hint
ornormal_hint
based on the algorithm, ignoring any externally set hint.
- Hints: Common values include
performance
,balance_performance
,default
,balance_power
,power
. - Algorithms:
load
algorithm: Triggers based on CPU utilization.- Format:
load:capture:threshold
capture
:single
(highest single core usage) ormulti
(total usage of all cores).threshold
: A float from0.0
to1.0
representing the usage percentage.
- Format:
power
algorithm: Triggers based on RAPL power consumption.- Format:
power:domain:op:value[:logic:domain:op:value...]
domain
: A RAPL power domain (e.g.,core
,uncore
,package
). Check withintel-undervolt measure
.op
:gt
(greater than) orlt
(less than).value
: Power in Watts (float).logic
: (Optional)and
oror
to chain multiple conditions.
- Format:
# Force 'performance' hint if single-core CPU usage > 80%, else 'balance_performance'
hwphint force load:single:0.8 performance balance_performance
# Switch to 'performance' if core power > 8W AND uncore power < 3W, else 'balance_performance'
hwphint switch power:core:gt:8:and:uncore:lt:3 performance balance_performance
interval
- Daemon Update Interval
Sets the update interval for the daemon mode.
- Syntax:
interval milliseconds
- Description: Specifies how often the daemon should check conditions (for
hwphint
) and re-apply settings (for configured daemon actions). - Parameters:
milliseconds
: The interval in milliseconds (integer).
# Run daemon checks every 5 seconds
interval 5000
daemon
- Daemon Actions
Specifies which settings the daemon should periodically re-apply.
- Syntax:
daemon action[:option]
- Actions:
undervolt
: Re-apply undervolt settings.power
: Re-apply power limit settings.tjoffset
: Re-apply temperature offset settings.
- Options:
once
: If specified, the action is only performed on the daemon's first run and not on subsequent intervals.
# On daemon start, apply undervolt settings once.
daemon undervolt:once
# Every interval, re-apply power and tjoffset settings.
daemon power
daemon tjoffset