[Android General] aLNG:
So just compiled some info from FK sources regarding our beloved interactive governor from [MENTION=3292224]franciscofranco[/MENTION]. Hoping some feedback for corrections and improvement in understanding the parameters. So depends on your usage, maybe you can find your own balance between performance and power saving.

GOVERNOR CONTROL:

1) above_hispeed_delay (20000 1400000:40000 1700000:20000)

When a CPU speed is at or above hispeed_freq, wait for this long before raising the CPU speed

in response to continued high load. Making this number higher will make your device hit

frequencies higher than hispeed_freq less often.

The default delay is 20ms, 40ms if the frequency is above 1.4GHz and 20ms if above 1.7GHz

higher: +battery -performance

2) go_hispeed_load (90)

Go to hispeed_freq when a CPU load at or above this value. go_hispeed_load should

not be lower than the target_load, which could lead to oscillating speed decisions. For a load less

than go_hispeed_load the governor will try to calculate the optimal frequency for the given load.

higher: +battery -performance

3) hispeed_freq (1350000kHz)

An intermediate frequency to ramp when a CPU load hits go_hispeed_load. If the load stays high

for a amount of time specified in above_hispeed_delay, then the speed may be bumped higher.

This is the frequency that you assume will adequately handle performance situations, but isn’t

especially good for power.

higher: -battery +performance

4) min_sample_time (40000us)

A minimum amount of time to spend at the current frequency before ramping down.

higher: -battery +performance

5) timer_rate (30000us)

Sampling rate for reevaluating CPU load when CPU is not idle. A deferrable timer is used, such

that the CPU will not be woken up from idle to service this timer.

higher: +battery -performance

6) timer_slack (70000us)

Maximum additional time to wait when the CPU is idle at speed greater than the minimum, before

re-evaluating load and reducing speed. (or -1 if unnecessary)

This is for handling special corner cases related to power. Imagine that a CPU is running at near

100% load and the governor increases the frequency to maximum, then the load is suddenly taken away

and the CPU is completely idle. Because it’s idle the interactive governor won’t run again which

means the CPU is stuck at the maximum frequency and is leaking a great deal of power.

The solution here is to have a threshold where after timer_slack amount of time the

governor will definitely run and reduce the frequency if necessary. In our case the timer will be

deferred for up to (30ms + 70ms) = 100ms when not at lowest speed.

higher: idk

7) sampling_down_factor (120000us)

A minimum amount of time to spend at maximum frequency before ramping down.

higher: -battery +performance

8) target_loads (85 1500000:90 1800000:70)

The governor adjust the CPU speed in order to bring the current CPU load below target_load.

In general, the lower the target_load, the more often the governor will raise CPU speeds to bring load

below the target.

In our case if CPU speed below 1.5GHz the target is 85% CPU load , if between 1.5GHz to 1.8GHz

the target is 90% CPU load and if 1.8GHz and above the target is 70% CPU load. Then from these

the governor will find the optimal frequency where the load will be less than or equal to the target load.

9) up_threshold_any_cpu_load (70)

up_threshold_any_cpu_freq (1497600kHz)

sync_freq (960000kHz)

If a maximum load among other CPUs is higher than up_threshold_any_cpu_load and if the

highest frequency among other CPUs is higher than up_threshold_any_cpu_freq then do not

let the frequency to drop below sync_freq.

higher: +battery -performance (only for first 2 parameters)

10) boostpulse_duration (350000us)

A time to keep a CPU at input_boost_freq, before allowing the CPU speed to drop according to load

as usual.

higher: -battery +performance

11) input_boost_freq (1574400kHz)

The CPUs (cpu0 and cpu1) will be boosted to this frequency when the screen is touched.

higher: -battery +performance