brazilinawax - пока описание не найдено. Все, что известно - основан на interactive. Практически то же, что и Smartass.
ondemand - Доступен почти во всех ядрах и во многих является дефолтным (по-умолчанию). Когда загрузка ЦП достигает определенного верхнего порога, этот регулятор быстро поднимает частоту процессора, чтобы отвечать запросу, затем постепенно снижает частоту ЦП, когда она перестает быть нужна
ondemandX - изменена чувствительность и добавлен режим сна.
conservative - Доступен в некоторых ядрах. Подобен регулятору ondemand, но будет повышать частоту ЦП более постепенно (не так быстро), чтобы лучше соответствовать запросу. Этот регулятор обеспечивает менее резкий отклик, но может лучше сохранять батарею
interactive - Имеет другой подход. Вместо того, чтобы семплировать ЦП на определенную частоту (уровень), он будет поднимать частоту, когда процессор выходит из режима простоя. Когда ЦП выходит из простоя, таймер сконфигурирован на то, чтобы запускаться в течение 1-2 тиков (цикл работы ЦП). Если в течение этого времени (с момента выхода процессора из режима простоя до запуска таймера) процессор загружен на 100%, то он считается недостаточно разогнанным и частота поднимается до максимального значения. Если же ЦП не был на 100% занят, тогда регулятор оценивает загрузку ЦП за последние 'min_sample_rate' (по-умолчанию 50 000 мкс), чтобы снизить частоту до необходимого уровня. Этот регулятор считается более интерактивно реагирующим на различные загрузки процессора. Единственный конфигурируемый параметр - время, в течение которого процессор будет пребывать на той или иной частоте перед тем, как начнется снижение (50 000 мкс).
interactiveX - дополненный interactive кодом, который блокирует ЦП на минимальной частоте, когда экран устройства выключен. Имеет профиль "сон+пробуждение", означающий, что вам не придется задавать профиль Screen Off в SetCPU вручную.
lazy - в основе ondemand с дополнительным параметром min_time_state для указания минимального времени, в течение которого ЦП остается на частоте перед понижением/повышением последней. Идея - убрать любую нестабильность, вызванную быстрым изменением частоты ondemand. Этот регулятор производит опрос состояния гораздо чаще, чем ondemand, но изменяет частоту на один шаг только лишь после истечения min_time_state. Также имеет параметр screenoff_maxfreq, который может быть задан для определения максимальной частоты screen-off.
lagfree - достаточно похож на ondemand по исходному коду и своему замыслу и назначению. Разница в его оптимизации для лучшей стабильности и "заточенности" в нагруженной среде. Частота изящно уменьшается и увеличивается, вместо того, чтобы сразу прыгать на 100% когда необходима скорость.
lulzactive - дефолтный в ядре Lulz. Основан на interactive. С профилем отключенного экрана как у interactiveX и некоторыми чертами smartass.
Алгоритм (англ):
cpu work load >= 60%
cpu frequency changes from (Lx) to (Lx -1)
up sampling time = 24000us (from smartass governor)
eg )
(L0)1200 - (L1)1000 - (L2)800 - (L3)500 - (L4)200
cpu_load = 60%, current frequency = (L2)800 >> frequency = (L1)1000
cpu_load = 60%, current frequency = (L1)1000 >> frequency = (L0)1200
cpu work load < 60%
cpu frequency keeps the current value or changes from (Lx) to (Lx + 1)
down sampling time = 49000us (from smartass governor)
screen off
cpu frequency is locked at scaling min freqeuncy.
default min freq of Galaxy S II is 200MHz.
you don't need to use "screen off" profile of SetCPU.
minmax - адаптация Conservative, но с очень неплохой производительностью. Весьма приятный регулятор с хорошим временем работы от батареи.
performance - Доступен в некоторых ядрах. Будет держать ЦП на максимальной установленной частоте все время. Это более эффективно, чем установить min и max на одинаковую частоту и оставить регулятор ondemand, поскольку система не будет тратить ресурсы на проверку степени загрузки ЦП
powersave - Доступен в некоторых ядрах. Будет держать ЦП на минимальном установленном значении все время
userspace - Позволяет пользователю или программе с правами root (работает с UID 0 - root) устанавливать процессор на определенную частоту через файл scaling_setspeed в определенной директории.
SavagedZen - пока описание не найдено. Все, что известно - основан на interactive. Еще одна и по отзывам весьма неплохая и сбалансированная модификация Smartass.
smartass - (erasmux@XDA). Полностью переписанный регулятор interactive. ЦП проводит больше времени на более низких частотах для улучшения времени работы от батареи. Также дает профиль Screen Off, оставаясь на минимальной частоте, когда телефон не активен (в режиме простоя).
smartassV2 - множество настраиваемых параметров. Быстро реагирующий на изменение загрузки ЦП, основан на идее interactive. Настраивается также порог "идеальной частоты" (как в lulzactive) и регулятор выше этой частоты ведет себя более агрессивно, чем в нижней зоне. В режиме сна используется другая, тоже настраиваемая, "идеальная частота".
Описание из репозитория с исходником (англ):
2.7 SmartassV2
+The CPUfreq governor "smartassV2", like other governors, aims to balance
+performance vs battery life by using low frequencies when load is low and
+ramping the frequency when necessary, fast enough to ensure responsiveness.
+The implementation of the governor is roughtly based on the idea of interactive.
+The idle loop is used to track when the CPU has idle cycles. The idle loop will
+set a relatively high rate timer to sample the load when appropriate, the timer
+will measure the load since it was set and schedule a work queue task to do the
+actual frequency change when necessary.
+The most important tunable is the "ideal" frequency: this governor will aim
+for this frequency, in the sense that it will ramp towards this frequency much
+more aggresively than beyond it - both when ramping up from below this frequency
+and when ramping down from above this frequency. Still, note, that when load is
+low enough the governor should choose the lowest available frequency regardless
+of the ideal frequency and similarly when load is consistently high enough the
+highest available frequency will be used.
+Smartass also tracks the state of the screen, and when screen is off (a.k.a
+sleep or suspended in the terms of this governor) a different ideal frequency
+is used. This is the only difference between the screen on and screen off
+states. Proper tuning of the awake_ideal_freq and sleep_ideal_freq should
+allow both high responsiveness when screen is on and utilizing the low
+frequency range when load is low, especially when screen is off.
+Finally, smartass is a highly customizable governor with almost everything
+tweakable through the sysfs.
smoothass - немного более агрессивный smartass