mirror of
https://github.com/RGBCube/superfreq
synced 2025-07-27 17:07:44 +00:00
docs: mention new configuration options; document dynamic turbo mode
This commit is contained in:
parent
9935ae9fe3
commit
7a708c60d7
1 changed files with 32 additions and 1 deletions
33
README.md
33
README.md
|
@ -31,6 +31,8 @@ but most common usecases are already implemented.
|
|||
and turbo boost
|
||||
- **Intelligent Power Management**: Different profiles for AC and battery
|
||||
operation
|
||||
- **Dynamic Turbo Boost Control**: Automatically enables/disables turbo based on
|
||||
CPU load and temperature
|
||||
- **Fine-tuned Controls**: Adjust energy performance preferences, biases, and
|
||||
frequency limits
|
||||
- **Per-core Control**: Apply settings globally or to specific CPU cores
|
||||
|
@ -150,6 +152,10 @@ variable.
|
|||
governor = "performance"
|
||||
# Turbo boost setting: "always", "auto", or "never"
|
||||
turbo = "auto"
|
||||
# Enable or disable automatic turbo management (when turbo = "auto")
|
||||
enable_auto_turbo = true
|
||||
# Custom thresholds for auto turbo management
|
||||
turbo_auto_settings = { load_threshold_high = 70.0, load_threshold_low = 30.0, temp_threshold_high = 75.0 }
|
||||
# Energy Performance Preference
|
||||
epp = "performance"
|
||||
# Energy Performance Bias (0-15 scale or named value)
|
||||
|
@ -166,6 +172,9 @@ max_freq_mhz = 3500
|
|||
[battery]
|
||||
governor = "powersave"
|
||||
turbo = "auto"
|
||||
# More conservative auto turbo settings on battery
|
||||
enable_auto_turbo = true
|
||||
turbo_auto_settings = { load_threshold_high = 80.0, load_threshold_low = 40.0, temp_threshold_high = 70.0 }
|
||||
epp = "power"
|
||||
epb = "balance_power"
|
||||
platform_profile = "low-power"
|
||||
|
@ -209,6 +218,27 @@ Those are the more advanced features of Superfreq that some users might be more
|
|||
inclined to use than others. If you have a use-case that is not covered, please
|
||||
create an issue.
|
||||
|
||||
### Dynamic Turbo Boost Management
|
||||
|
||||
When using `turbo = "auto"` with `enable_auto_turbo = true`, Superfreq
|
||||
dynamically controls CPU turbo boost based on:
|
||||
|
||||
- **CPU Load Thresholds**: Enables turbo when load exceeds `load_threshold_high`
|
||||
(default 70%), disables when below `load_threshold_low` (default 30%)
|
||||
- **Temperature Protection**: Automatically disables turbo when CPU temperature
|
||||
exceeds `temp_threshold_high` (default 75°C)
|
||||
- **Hysteresis Control**: Prevents rapid toggling by maintaining previous state
|
||||
when load is between thresholds
|
||||
- **Profile-Specific Settings**: Configure different thresholds for battery vs.
|
||||
AC power
|
||||
|
||||
This feature optimizes performance and power consumption by providing maximum
|
||||
performance for demanding tasks while conserving energy during light workloads.
|
||||
|
||||
> [!TIP]
|
||||
> You can disable this logic with `enable_auto_turbo = false` to let the system
|
||||
> handle turbo boost natively when `turbo = "auto"`.
|
||||
|
||||
### Adaptive Polling
|
||||
|
||||
Superfreq includes a "sophisticated" (euphemism for complicated) adaptive
|
||||
|
@ -275,7 +305,8 @@ the codebase as they stand.
|
|||
|
||||
### Setup
|
||||
|
||||
You will need Cargo and Rust installed on your system. Rust 1.80 or later is required.
|
||||
You will need Cargo and Rust installed on your system. Rust 1.80 or later is
|
||||
required.
|
||||
|
||||
A `.envrc` is provided, and it's usage is encouraged for Nix users.
|
||||
Alternatively, you may use Nix for a reproducible developer environment
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue