Siyah Governors
For those who wonder what governor A or governor B included in this kernel is about, thought we will have a small writeup.
We have 13 governors in Siyah as of 2.2 Beta 8
1) lazy
2) lulzactive
3) lagfree
4) smartassV2
5) ondemandx
6) brazilianwax
7) SavagedZen
8) smartass
9) conservative
10) userspace
11) powersave
12) ondemand
13) performance
Of these, explanations for governors 6 to 13 can be found here
http://xdaforums.com/showthread.php?t=1242323 [This thread also explains all the 6 i/o schedulers included in Siyah]
You can tweak the governors using an init.d script to echo suitable values into:
/sys/devices/system/cpu/cpufreq/name-of-active-governor/tweak-file-name
Example:
echo "20000" /sys/devices/system/cpu/cpufreq/lulzactive/up_sample_time
Governors 1 to 5 in brief:
1) lazy:
Basically and ondemand with an additional parameter min_time_state which specifies the minimum time cpu stays on a frequency before scaling up/down. Idea here is to eliminate instabilities caused by fast frequency switching of ondemand. lazy governor polls more often than ondemand, but changes frequency only after completing min_time_state on a step. Lazy also has a screenoff_maxfreq parameter which can be configured to specifiy max frequency while screen is off.
2) lulzactive:
Based on interactive & smartass governors, this governor tends to be the new favorite for many of us. When workload is greater than or equal to 60%, the governor scales up cpu to next higher step. When workload is less than 60%, governor scales down cpu to next lower step. On screen off, frequency is locked to global scaling minimum frequency.
3) lagfree:
Similar to ondemand. Difference is optimization to become more battery friendly. Frequency is gracefully decreased and increased, unlike ondemand which jumps to 100% too often. Lagfree doesn't skip frequencies while scaling up or down.
4) smartassV2:
Modified smartass and one of the favorite governor for many a people. This governor scales down cpu very fast while screen is off and scales up to 500 mhz quickly when screen is on. There's no upper limit for frequency while screen is off. The governor aim for an "ideal frequency", and ramp up more aggressively towards this freq and less aggressive after. It uses different ideal frequencies for screen on and screen off, namely awake_ideal_freq and sleep_ideal_freq. Thus ensuring a balance between performance and battery.
5) ondemandx:
Basically an ondemand with suspend/wake profile. This governor is a battery friendly ondemand. When screen is off, max frequency is 500 mhz.