Программа регулировки процессора для андроида. Режимы процессора в Android. Фоновые процессы занимают слишком много памяти

Если говорить правильно о режимах Android ядра то правильно будет называть — а лгоритмы управления частотой процессора или kernel CPU governor. Не все режимы которые здесь перечислены могут быть в вашем Android устройстве. Android работает на ядре Linux .

Какие бывают CPU governor

  1. OnDemand
  2. OndemandX
  3. Performance
  4. Powersave
  5. Conservative
  6. Userspace
  7. Min Max
  8. Interactive
  9. InteractiveX
  10. Smartass
  11. SmartassV2
  12. Scary
  13. Lagfree
  14. Smoothass
  15. Brazilianwax
  16. SavagedZen
  17. Lionheart
  18. LionheartX
  19. Intellidemand
  20. Hotplug
  21. Wheatley
  22. Lulzactive
  23. AbyssPlug
  24. BadAss
  25. Ktoonservative
  26. AssWax
  27. Sleepy
  28. Hyper
  29. SmartassH3
  30. Smartmax

Подробно о каждом режиме

OnDemand — «нейтральный» режим работы ядра, используется по умолчанию во многих Android устройствах. В данном режиме сбалансирована производительность и потребление энергии, но к сожалению нет режима энергосбережения.

OndemandX — улучшенная версия ядра ondemand, с добавлением профиля для сна и пробуждения. Качество его работы во многом зависит от планировщика I/0.

Performance — «производительный» режим ядра, как вы поняли по названию. В данном говернере (режиме) процессор работает практически всегда на максимальной частоте или максимальной. Включается когда устройство на зарядке. Для повседневного использования не подходит, так быстро садит батарею.

Powersave — «энергосберегающий» режим ядра. В отличие от Performance очень медленно и поднимает частоту ядра, точней практически не поднимает и работает на самой минимальной частоте. Использовать данный режим возможно только при выключенном экране, для сохранения энергии. Для повседневного использования не подходит, так как Android становиться не отзывчивым или зависает.

Conservative — «энергосберегающий» режим ядра. В 2 раза медленней ondemand поднимает тактовую частоту процессора. При одинаковых частотах в 2 раза уступает производительности ondemand. Без нагрузки устанавливает минимальную частоту процессора. Рекомендуется использовать также когда выключен или включается экран.

Userspace — «нейтральный» режим работы ядра. Настраивает сам пользователь. Встречается очень редко.

Min Max — «нейтральный» режим работы ядра. Модифицированный режим ядра Conservative, но в отличие его более производительный. Использует или максимальную или минимальную частоту ядра, промежуточных нет!

Interactive — «производительный» режим ядра. Модифицированный режим ядра ondemand, который быстрее изменяет частоту ядра, но в отличие от ondemand, разрешается проводить больше времени на максимальной частоте. Поэтому менее энергоэффективный.

InteractiveX — «производительный» режим ядра. Как видно из названия модифицированный режим ядра Interactive. Более энергосберегающий.

Smartass — «производительный» режим ядра. Модифицированный режим ядра InteractiveX. Очень популярен у пользователей Android.

SmartassV2 — «производительный» и «энергосберегающий» режим ядра. Модифицированный режим ядра Smartass, точней вторая его версия. Многие называют его идеальным. Возможно оно так есть.

Scary — «производительный» и «энергосберегающий» режим ядра. Модифицированный режим с включениями Smartass и Conservative медленно подымает и медленно опускает частоту процессора, но все же работает чаще на минимальных частотах.

Lagfree — «энергосберегающий» режим ядра. Был создан как альтернатива ondemand. Более экономичный, но в необходимых ситуациях быстро поднимает максимальную частоту. Не рекомендуется использовать в тяжелых играх и просмотре видео.

Smoothass — разрабатывался как альтернатива Smartass. Более производительный, вследствие чего менее энергоэффективный.

Brazilianwax — разрабатывался как альтернатива SmartassV2. Более производительный, вследствие чего менее энергоэффективный.

SavagedZen — «энергосберегающий», разрабатывался как альтернатива Smartass. Более энергоэффективный, вследствие чего менее производительный.

Lazy — режим ondemand с более быстрым поднятием частоты.

Lionheart — «производительный» режим ядра. Похож на Performance, но с более быстрым поднятие частоты.

LionheartX — улучшенный вариант Lionheart с включениями Smartass.

Intellidemand — интеллектуальный вариант OnDemand. Схож с Interactive. Активно подымает частоту в требовательных задачах и плавно в менее требовательных.

Hotplug — очередной вариант OnDemand. Отключает ядра процессора в простое

Wheatley — очередной вариант OnDemand.

Lulzactive — смесь Interactive и Smartass. Увеличивает частоту на шаг при загруженности системы более чем 60%. Уменьшает на шаг если меньше 60%.

AbyssPlug

BadAss — без нагрузки довольно экономичный режим, при появление какой либо большой задачи, быстро поднимает частоту.

Ktoonservative — усовершенствованный вариант Conservative.

AssWax — вариант Interactive.

Sleepy — очередной вариант по достижению производительности и автономности.

Hyper — очередной вариант основной OndemandX

SmartassH3 — предназначен для экономии батареи

Smartmax — представляет собой сочетание между OnDemand и Smartass2 По умолчанию настроен это для экономии заряда батареи.

Какие бывают планировщики I/0

Планировщики I/0 — Планировщики ввода/вывода выполняют две основные операции: слияние и сортировка. Слияние представляет собой процесс принятия двух или нескольких смежных запросов ввода/вывода и объединения их в один запрос. (взято из opennet.ru).

Если сказать в двух словах, это способы обращения к памяти.

  1. Anticipatory
  2. Deadline
  3. Simple или SIO

Подробно о каждом планировщике I/0

Noop — самый безопасный и простой планировщик, так как только объединяет запросы но не сортирует.

Anticipatory — выдает запросы тогда, когда предыдущий был обработан, после чего ожидает некоторое время следующий запрос, если его нет, переходит к другому запросу.

CFQ — объединяет задачи в цели и по кругу их обходит. Сбалансированный и производительный вариант для Android.

Deadline — хранит отсортированную очередь на запись, новые запросы сортируются и перемещаются в конец очереди. По своим возможностям превосходит CFQ.

VR — с элементами Deadline. Самый не стабильный планировщик, но все же самый производительный.

SIO — выполняет сначала быстрые запросы, после более емкие. Стабильный, простой и производительный.

BFQ — производительный, но все же хуже чем VR и SIO

Режимы Android ядра и планировщик I/0 стоит использовать

Планировщики — SIO, VR или Noop

Режимы ядра:

По сбережению энергии — InteractiveX, Smartass, SavagedZen (conservativ и powersave не учитывались так как для работы они не годятся)

По производительности — SmartassV2, Lionheart, MinMax.

Сразу ответ на первый вопрос: governor - это регулятор выбора частоты процессора. То есть это некий алгоритм, позволяющий управлять поведением процессора в зависимости от различных условий. Все они находятся в ядре linux и не могут быть добавлены отдельно от ядра. Задача этого диспетчера - устанавливать некоторую оптимальную частоту в пределах выбранного минимума и максимума (scaling_min_freq и scaling_max_freq).

Буду в этом посте называть governor регулятором или говернером - ну не губернатором же его называть 🙂

На что нужно обратить внимание при выборе регулятора процессора:

  • Скорость . Обычно большая скорость несколько снижает срок работы от аккумулятора, так что стоит смотреть не только на производительность, но и на то, как себя ведет батарея при этой скорости работы. Если не собираетесь играть в требовательные к производительности игры, стоит искать баланс между скоростью работы и автономностью.
  • Автономность . Обычно при увеличении срока службы устройства при работе от батареи заметно страдает производительность: гаджет начинает подтормаживать при требовательных к ресурсам операциях, пропадает плавность, а бывает, что и просто появляются зависания. Тут также стоит методом проб и ошибок найти баланс.
  • Стабильность . Некоторые «гувернеры» ведут себя крайне нестабильно на одном девайсе, и довольно неплохо на других… Тут много зависит от того, насколько открыт исходный код ядра производителем, комбинаций различных патчей и… настроения разработчика 🙂 Чаще всего, выясняется методом тестирования на собственном гаджете.
  • Плавность . Это не одно и тоже, что и первый пункт: смартфон может работать быстро, однако совершенно не плавно. Проще всего проверяется прокруткой длинных списков вниз/вверх или просто открытием/закрытием приложений. Понятно, что если девайс работает быстро, но рывками, впечатление от пользования им будет совсем не то…

Итак, собственно, перехожу к перечню известных диспетчеров управления частотой процессора (governor).

В большинстве своем, их можно разбить на группы:

  1. Основанные на Ondemand: такие как Ondemand, OndemandX, Intellidemand, Lazy, Lagfree, PegasusQ, HYPER, Wheatley, Hotplug, HotplugX, AbyssPlug, AbyssPlugv2, Nightmare, Sleepy…
  2. Основанные на Conservative: Conservative, Lionheart, LionheartX…
  3. Основанные на Interactive: Interactive, InteractiveX, Intelliactive, Lulzactive, Luzactiveq, Smartass, SmartassV2, SmartassH3, Brazilianwax, SavagedZen, Dyninteractive, Interactive Pro…
  4. Гибридные (комбинация двух и более говернеров): Smartmax, Dancedance, Performance May Cry(PMC), Ktoonservative, KtoonservativeQ…
  5. Некая своеобразная категория (входят в стандартный набор доступных регуляторов на большинстве стоковых ядер): Userspace, Powersave, Performance, Min Max, ZZmove, MSM DCVS, IntelliMM.

OnDemand

В большинстве стоковых ядер (то есть тех, что поставляются с гаджетом от производителя) он установлен по умолчанию. Основная цель данного регулятора - повышение частоты до максимально возможной как только появляется нагрузка на процессор, чтобы обеспечить максимальную отзывчивость системы. Грубо говоря, каждый раз данный говернер ставит перед собой вопрос: насколько нагружен процессор и стоит ли мне повышать частоту? Через заданные промежутки времени (sampling_rate: ~ 10-20 миллисекунд) проверяет загрузку процессора и при достижении определенного порога (up_threshold ~80%) повышает частоту до максимума пока загрузка процессора не снизится. Даже несмотря на то, что большая часть пользователей считает данный говернер оптимальным, он совершенно не заботится о расходе вашей батарейки. Да, система с ним быстро работает, но практически постоянно ресурсы процессора расходуются вхолостую. Кроме того, он не содержит профилей для выключенного экрана, что также не дает никакой экономии энергии пока смартфон лежит и бездействует.

OnDemandX

Чаще всего, это обычный OnDemand с встроенными профилями для сна. Это позволяет ему быть более экономным, прежде всего, в режиме выключенного экрана. Однако, OnDemandX далеко не всегда хорошо ведет себя на некоторых девайсах, потому что может «тупить» при реагировании на резкие смены нагрузки и переход от стандартного профиля на профиль для сна.

OndemandQ

OndemanQ отключает второе ядро, когда оно не нужно и включает обратно, когда нагрузка большая, в результате получаем хорошую производительность и экономию заряда батареи.

Powersave

Понижает максимальную частоту до минимально доступной для выполнения задачи. Таким образом, что и следует из названия, потребляет очень мало энергии, однако за счет этого устройство будет чудовищно лподтормаживать при нагрузке чуть более высокой, нежели минимальная.

Performance

Работает с точностью да наоборот по сравнению с предыдущим: постоянно использует максимально доступную частоту процессора. Пользоваться им в повседневной жизни не стоит, так как аппарат очень сильно греется, ведь процессор постоянно в напряжении.

Conservative

«Медленная» версия OnDemand, крайне неохотно повышающая частоту процессора. При отсутствии нагрузки данный говернер использует минимально доступную частоту постоянно. Изменение частоты вверх и вниз происходит не скачком, а постепенно. По сравнению с OnDemand медленнее отклик, однако больше экономит заряд батареи.

Userspace

Для ручного задания частот. Позволяет целиком и полностью настроить работу процессора. Не рекомендуется и практически не используется из-за сложностей в настройке.

Адаптация режима «Conservative». Один из самых быстрых, при этом и батарею держит предположительно хуже, чем, например, SmartassV2. Старается минимизировать количество изменений частоты через ограничение частот: только минимум или максимум. Частота снижается и повышается в зависимости от текущей нагрузки и пороговых значений (down_threshold и up_threshold)

Interactive

Режим Interactive быстрее чем Ondemand, и дает больший отклик при ничтожном увеличении потребления. Выставляет частоту в зависимости от нагрузки, но проверка загрузки наступает не через равные промежутки времени, а в случае выхода из простоя «idle» (+ таймер проверки через 1-2 такта после выхода из простоя). Если процессор загружен на 100% по выходу из простоя и по таймеру, то частота повышается до максимума. Если нет загрузки для повышения до максимума, то диспетчер проверяет как изменилась загрузка с последнего изменения частоты за промежуток времени min_sample_time, выбирая верхнее значение с последнего выхода из простоя для определения новой частоты. Один параметр настройки - min_sample_time, минимальное количество времени на заданной частоте перед её снижением, по умолчанию 50-80 тысяч миллисекунд.

InteractiveX

По аналогии с OnDemandX - это Interactive с профилем для сна, также настроен профиль для выхода из этого режима. Несколько меньше расходует батарейку.

InteractiveX v2

Разработан пользователем под ником Imoseyon (с использованием кода ядра Lean Kernel для Galaxy Nexus). Регулятор InteractiveX v2 ведет себя практически идентично с InteractiveX, разве что дополнительно принуждает использовать лишь одно ядро процессора в состоянии выключенного экрана устройства.

Intelliactive

Основан на регуляторе Interactive со следующими улучшениями: улучшение собственных возможностей входных драйверов (не нужна помощь PowerHAL); двухфазное планирование (фазы idle/busy для предотвращения прыжков напрямую к максимальной частоте);проверка отключенных ядер и замыканий, исключая некоторые ненужные проверки для избежания горячего подключения. Это один из наиболее ориентированных на производительность регуляторов, не намного отличающийся по коду от Interactive.

Hellsactive

Сильно модифицированный говернер Intelliactive от разработчика под ником Hellsgod, который добавил несколько твиков для улучшения времени жизни заряда батареи. Hellsactive менее агрессивен сравнительно с Intelliactive, и заряд батареи расходуется заметно меньше, чем у оригинального регулятора.

InteractiveB

Основанный на Interactive регулятор с более сбалансированными профилями между расходом заряда батареи и производительностью.

InteractivePro

Новейшая (модифицированная) версия Interactive, которая оптимизирована для девайсов типа One Plus One. Это более эффективная версия по сравнению с первоначальным Interactive, потому что этот регулятор постоянно вычисляет оптимальные нагрузки каждого ядра процессора, позволяя процессору эффективно масштабировать частоты.

Arteractive

Это доработка регулятора Interactive с обновленным исходным кодом. Содержит множество оптимизаций для процессоров Snapdragon 80x.
Smartass

Появился благодаря работе разработчика Erasmux, который целиком переписал код Interactive-говернера, основной задачей была поставлена продолжительная работа от батарейки без потери производительности. Скорость рядом с MinMax, трудно сказать кто быстрее. Однако, не так хорош для заряда батареи по сравнению с SmartassV2.

SmartassV2

Вторая версия оригинального Smartass от Erasmux. Один из любимцев большинства пользователей. Говернер расчитан на работу на «идеальной частоте» и повышает частоту несколько более агрессивно, нежели понижает. Используются различные «идеальные» частоты для скрин-он и скрин-офф профилей, называются awake_ideal_freq и sleep_ideal_freq. Задача данного говернера - баланс между энергопотреблением и производительностью. Регулятор находит «идеальную» частоту, к которой будет стремиться (Более быстрое изменение до этой частоты, чем выше или ниже ее. Для первой версии smartass например «идеальная» может быть задана как 300 (и не выше) во время сна и 500 (и не ниже) при включенном экране. У второй версии больше гибкости, ограничения «не выше» и «не ниже» нет. Если вы слушаете плейер с выключенным экраном то можете найти определенную «идеальную» частоту для этого режима, ниже которой не будет лагов).

SmartassH3

Основан на SmartassV2. Более эффективное изменение частоты. Не наращивает слишком высоко, когда это не нужно, благодаря этому лучше экономится энергия.

Darkside

Более оптимизированный и агрессивный Smartass.

Основан на исходниках Conservative с добавлением фич smartass. Не очень ясно зачем его было разрабатывать, так как у Conservative медленное изменение частоты, а у Smartass одно из самых быстрых.

AggressiveX

Модифицированный говернер Conservative c большим количеством настроек для увеличения отзывчивости при сохранении заряда. Также включает в себя код оптимизаций поведения в режиме выключенного экрана.

Основан на OnDemand. Но в отличии от него, переключение частот происходит очень плавно. Регулятор также отличается весьма умеренным энергопотреблением.

Stockdemand

Сильно модифицированный OnDemand для лучшей производительности не в ущерб жизни заряда батареи. Довольно неплохо сбалансирован для повседневного использования.

Smoothass

От создателя Smartass/SmartassV2 пользователя с ником Erasmux. Это измененный Smartass для увеличения скорости. Агрессивнее повышение частоты, выше отклик и, естественно, выше расход батареи.

SuperBad

Переработанный Smartass. Отличается большей отзывчивостью.

Brazilianwax

Почти то же самое, что и Smoothass, только основан на SmartassV2. Чуть более агрессивно изменяет частоты, что выливается в чуть лучшую производительность и чуть меньшее кол-во времени работы.

SavagedZen

Еще один основанный на SmartassV2 говернер. В сравнении с Brazilianwax предстает в несколько лучшем свете из-за лучшего энергопотребления без потери производитель
ности.

Регулятор от разработчика под ником Ezekeel - это, в большинстве своем, OnDemand с новым значением min_time_state, введеным для определения минимального времени, по прошествии которого CPU меняет частоту выше/ниже, ориентируясь на нагрузку. Главная идея этого говернера - исключить нестабильные постоянные скачки родного ондеманда.

Lionheart

Основан на Conservative с применением множества твиков. В общем и целом, по ощущениям сравним с ондемандом при меньшем энергопотреблении, но более высоком, чем Conservative. Хорошо работает с планировщиком deadline.

LionheartX

«Сын» обычного Lionheart, имеющий профиль простоя от регулятора Smartass.

Основан на Conservative. Несколько похож по работе с Lionheart. Старается держать более низкие частоты процессора, позволяющие наносить минимальный ущерб для производительности.

Intellidemand

Основан на Ondemand, что и следует от названия (Intelligent Ondemand). Ведёт себя в зависимости от GPU. Когда GPU загружен (игры, карты и т.д.) Intellidemand ведет себя подобно Ondemand. Когда GPU не загружен или умеренно загружен, Intellidemand ограничивает максимальную частоту в зависимости от частоты для устройства/ядра для экономии батареи.

OndemandPlus

Ondemandplus - это основанный на исходных кодах Ondemand и Interactive регулятор. Он имеет дополнительные энергосберегающие возможности, которые применены практически без ущерба для производительности. В то время, как Interactive предлагает современный и удобный фреймворк, логика масштабирования частот была полностью переписана. Тесты показали, что OndemandPlus более дружественен к расходу заряда батареи. Это достигнуто за счет того, что процессор начинает работать на максимальных частотах не сразу, а пошагово.

GallimaufryX

Модифицированный OnDemand с двухступенчатым поведением, как и в Ondemand, но с некоторыми твиками для скорости. Включает в себя также код для оптимизации поведения при выключенном экране от разработчика Imoseyon.

Также основан на Ondemand. Есть отличительная способность: на многоядерных устройствах может отключать ядра, при низкой нагрузке.

Основан на OnDemand, как и большинство говернеров, которые разрабатывают пользователи XDA. Он содержит некоторые улучшения из LG, в частности, в плане улучшения обработки наращивания частоты. Регулятор имеет различные настраиваемые опции, как у говернера HTC, однако все равно ведет себя очень похоже. Параметры настройки, идущие по умолчанию, довольно консервативны. Он берет начало от Uber-ядра Cl3kener для Nexus 5, где имеет довольно хорошую репутацию использования батареи.

Yankdemand

Практически тот же OnDemand со слегка измененными значениями по умолчанию, имеющими цель снизить потребление заряда батареи.

HotplugX

Тот же Hotplug, более дружественный к батарейке.

Abyssplug

Еще один модифицированный HotPlug.

AbyssPlugv2

Вторая версия AbyssPlug, оптимизирована для нескольких ядер.

Убирает все быстрые переключения и пики при переключении к максимальной частоте. Также основывается на нагрузке на видеоадаптер. Если GPU нагружен, то частота процессора сразу возрастает. Если видеоадаптеру не хватает производительности, то лимит частоты будет снят, и частота процессора вырастет до максимального значения.

Wheatley

Как и многие другие режимы, Wheatley основан на Ondemand. Быстрое понижение/повышение частоты, улучшенное энергосбережение, приоритет на запущенные процессы - вот основные особенности Wheatley.

Lulzactive

Основан на Interactive и Smartass. Когда загрузка больше 60% для данной частоты процессора, увеличивает частоту на один шаг. Когда загрузка процессора меньше чем 60% для данной частоты, он уменьшает частоту на один шаг. Когда экран погашен, частота процессора блокируется на минимальной частоте.

LulzactiveQ

Новая версия Lulzactive. Имеет три новых параметра, доступных пользователю для настройки: inc_cpu_load, pump_up_step, pump_down_step. В отличие от старой версии, эта, как логично предположить, позволяет больше управлять работой говернера. Можно задать промежуток, в котором говернер будет решать, повышать или понижать частоту. Так же можно выбрать и настроить количество доступных частот, до которых говернер будет повышать/понижать работу процессора. Когда нагрузка выше inc_cpu_load, говернер повышает CPU pump_up_step. Когда нагрузка ниже заданной в параметре inc_cpu_load, говернер понижает CPU pump_down_step.

Это регулятор LulzactiveQ с пачкой твиков для лучшей производительности. Это означает большая скорость работы устройства в ущерб жизни заряда батареи.

PegasusQ / PegasusD

Очень гибкий с кучей настроек (имеются ввиду настройки для разработчиков ядер, которые редактируются при сборке), создан только для многоядерных процессоров.

Агрессивная версия регулятора PegasusQ, которая по максимуму держит два ядра отключенными. Это неплохо оптимизированная версия PegasusQ для телефонов с четырехъядерными процессорами.

PegasusQPlus

PegasusQPlus - это заметно улучшенный регулятор PegasusQ, который был реализован разработчиком AndreiLux в его ядре Perseus. PegasusQPlus должен иметь лучший баланс между производительностью и использованием заряда батареи.

YankasusQ

Еще одна реализация говернера PegasusQ с включенным настраиваемым профилем для выключенного экрана и некоторыми другими модификациями с целью улучшения. Разница между PegasusQ и YanksusQ в том, что последний заметно менее агрессивно наращивает частоты при включенном экране (меньше расход заряда батареи).

Virtuous

Более энергоэффективная модификация smartassV2.

Yankactive

Слегка измененный пользователем Yank555.lu регулятор Interactive. Были добавлены твики батареи на основе запросов пользователей, что позволило сделать его намного более дружественным к расходу батареи, чем оригинальный Interactive, с минимальными потерями в производительности.

Adaptive

Предназначен для чувствительных к задержкам, а также требующим производительности под нагрузкой. Он пытается уменьшить задержки тактов увеличивая частоту. Он удобен для высоконагруженных и средненагруженных систем. Но также заботится об энергопотреблении до средних нагрузок и частота будет повышаться медленнее на низких нагрузках, а когда нагрузка возрастёт, то частота будет подниматься быстрее.

Это ничто иное, как отполированный регулятор Interactive, названный Bacon, будучи адаптированным из bacon-устройств (One Plus One) пользователем под ником neobuddy89. Большое количество твиков для производительности/задержки.

Любимый выбор и один из первых говернеров, созданных Alucard_24. Этот регулятор основан на OnDemand, однако был множественно улучшен для баланса между жизнью батареи и производительностью. Считается, что в этом говернере данный баланс найти удалось.

Nightmare

Модифицированный PegasusQ, менее агрессивный, и не имеет автоопределния оборудования. Это хорошо для баланса между временем работы и производительностью. Может предотвратить экран смерти, так как не определяет оборудовние(не знаю что это).

Darkness

Основан на Nightmare, однако более простой и быстрый, а также более стабильный за счет применения некоторых патчей и конфигов.

Использует таблицу частот, что должно приводить к плавному изменение частоты, весьма дружественен к батарее. Имеет кучу всяких плюшек и «интеллектуальных» улучшений, что не всегда идет на пользу. Адаптирован к лучшему поведению при выключенном экране.

ZZmanX примерно то же, что и ZZmove, но он был переименован, так так разработчик с ником DorimanX пересобрал его в своей собственной версии с ориентацией на более высокую производительность.

Является попыткой найти баланс между производительностью и временем автономной работы. Основан на модифицированном Ondeamnd и оптимизирован для SGS2. Также имеет некоторые особенности из OndemandX и по поведению похож на него под нагрузкой.

Hyper (ранее известен как Kenobi )

На основе Ondemand. Агрессивно умный и плавный. Оптимизирован для SGS2. Добавлены фичи из OndemandX. При нагрузке поведение очень похоже на Ondemand. Есть профили для глубокого сна (Deep Sleep) и быстрого старта (Fast Start). Максимальная частота в спящем режиме - 500 МГц.

Про него мало что известно. Известно лишь, что он принадлежит к семье Interactive.

Zeneractive

Основан на регуляторе Interactive. Он управляет частотами подобно Interactive и имеет такие же настройки изменения частот процессора. Тем не менее, в Zeneractive весь код управления частотами был переписан чуть ли не с нуля.

Что-то среднее между PegasusQ и Ondemand. Неплохой имеет баланс между экономией батареи и производительностью.

ConservativeX

Разработка пользователя Imoseyon (с использованием кодов ядра Lean Kernel для Galaxy Nexus). Регулятор ConservativeX ведет себя подобно говернеру Conservative с дополнительным преимуществом блокировки частоты процессора на минимальных оборотах при выключенном экране.

Bioshock

Регулятор, разработанный пользователем под ником Jamison904. Микс говернеров ConservativeX и Lionheart. Хорош для баланса между сохранением заряда батареи и производительностью.

Оптимизированная версия регулятора PegasusQ с применением некоторых серьезных твиков для улучшения производительности. Это означает, что батарея разряжается немного быстрее, чем при использовании оригинального PegasusQ, однако говернер по-прежнему сбалансирован.

DynInteractive

Динамический интерактивный говернор. Это регулятор динамически адаптирует частоту процессора в пределах ваших параметров системы, зависящих от нагрузки.

SmartMax

Что-то среднее между Ondemand и SmartAssV2. Не рассчитан на бенчмарки и «ультрапроизводительность». Просто баланс между говернорами. Использует «идеальную частоту» = 475МГц. При дотрагивании до экрана частота резко повышается для плавности.

SmartMax EPS

EPS расшифровывается как «Extreme Power Saving» (экстремальное энергосбережение). Основан на SmartMax. Особенности: отключено блокирование random-доступа (всегда используется неблокированная urandom), ARM спин-блокировки взяты из 3.8.2, твики RWSEM (reader/writer semaphore). RWSEM лучше всего использовать, когда доступ на запись требуется редко, и доступ на запись проводится в течение коротких периодов времени.

Xperience

Smartassv2 c некоторыми твиками для лучшей производительности и плавности. Создатель: TeamMex.

Менее агрессивный и более стабильный Ondemand, модифицированный TeamMex. Хороший компромис между производительностью и жизнью батареи.

Ondemand EPS

Модифицированная версия Ondemand, оптимизированная под новейшие устройства. Основана на Ondemand-версии из ядра Semaphore Kernel, где говернер был рассчитан на более долгую жизнь заряда батареи.

Performance may cry (PMC)

Регулятор, основанный на Smartmax, применено множество твиков для максимально долгой работы от батареи. Совершенно не подходит для игрушек…

Новый регулятор от проекта CyanogenMod и проекта SlimROM. Оптимизирован с ориентацией на производительность и был настроен для множества новых гаджетов, например, для One Plus One.

Основан на Conservative с некоторыми твиками для скорости и более долгой жизни батареи.

Ktoonservative

Основан на Conservative. Может отключать ядра. Не очень с батареей, но очень хорошо выполняет свою работу.

Dance Dance

Основан на Conservative, но с более высоким темпом рампы (higher ramp rates - по аналогии с LionHeart), и лучше спят подпрограммы (better sleep routines - по аналогии с Wheatley). Говернор Dance Dance это модифицированный в сторону увеличения производительности conservative. Хороший баланс между производительностью и сроком работы батареи.

Построен на Conservative, на Hyper и на Ondemand.

FrancoGazelle

Это смесь Сonservative и Hotplug. При выключенном экране отключает второе ядро и понижает частоту на минимум. При включенном экране выставляет автоматически частоту процессора на оптимальную.

FrancoTurtle

Модификация FrancoGazelle, предназначенная для экономии батареи.

Uberdemand

Uberdemand это тот же Ondemand, но с двухфазной функцией, что означает более мягкое поведение при изменении частот до максимума.

Sakuractive

Поднимает частоту «по требованию», но с некоторыми ключевыми различиями. Во-первых, использует таблицы CPU напрямую, вместо того, чтобы повышать частоту в процентах от максимальной частоты. Во-вторых, отключит вспомогательные ядра пока система в режиме ожидания и запустит опять, как только они потребуются. И последнее, переходит в низкий вольтаж, если используется только CPU, или когда температура высокая.

Barry-Allen

Основан на Interactive. Этот регулятор предполагает большую дружественность к расходу батареи и в то же время обладает весьма неплохой производительностью.

Touchdemand

Touchdemand - это основанный на Ondemand говернер процессора, однако он был модифицирован специально под чип Tegra 3 (только для планшетов). Он имеет дополнительные твики для плавности и отзывчивости сенсорного экрана планшета.

ElementalX

Если вы являетесь владельцем девайсов Nexus, то этот регулятор установлен там по-умолчанию. Он назван в честь ядра elementalX и основан на говернере Interactive c некоторыми твиками, нацеленными на производительность. Этот регулятор создан именно для производительности, без расчета на сохранение заряда батареи!

IntelliMM

Переписанный регулятор Min Max, имеющий три режима работы процессора: Idle, UI и Max. Говернер IntelliMinMax (IntelliMM) создан для работы в тех основных диапазонах напряжения, способных максимизировать расход заряда и производительность при создании плавности интерфейса. Он дружественен к батарее, так как проводит большую часть времени на более низких частотах.

Boostactive

Основан на Interactive, но с применением твиков, направленных на повышение скорости изменения частот процессора. Говернер ориентирован на производительность.

Aggressive

Примерно такой же как Lionheart, однако он основан на Conservative. И заметно более агрессивный.

Mythx_plug

Включающий некоторые улучшения говернер Interactive, который был модифицирован для того, чтобы медленнее наращивать частоту и быстрее уменьшать ее. По сравнению с Interctive это позволяет заметно снизить скорость разряда батареи.

Усовершенствованный вариант Interactive, модифицированный пользователем под ником neobuddy89. Главная цель - найти баланс между расходом заряда батареи и производительностью лучше, чем Interactive с некоторыми твиками именно на оптимизацию расхода батареи не в ущерб скорости работы устройства.

Оценки по пятибалльной системе

Для быстродействия:

Одно ядро:

Performance - 3

- SmartassV2 - 5

Несколько ядер:

Performance - 3
- ElementalX - 4
- Interactive/InteractiveX - 4
- Slim - 5
- HYPER - 5
- Lionheart/LionheartX - 5
- Intelliactive - 5

Для долгой жизни батареи:

Одно ядро:

Powersave - 3
- Ondemand - 4
- Conservative - 3

Несколько ядер:

Perfomance may cry (PMC) - 4
- Powersave - 3
- Smartmax - 4
- Ondemand - 4
- Conservative - 3

Баланс между производительностью и жизнью заряда батареи:

Одно ядро:

Interactive/Intelliactive - 4
- Ondemand/OndemandX - 4
- SmartassV2 - 5

Несколько ядер:

LulzactiveQ - 3
- Intelliactive - 5
- Interactive/InteractiveX − 4
- Yankactive/YanksusQ - 4
- Ondemand/OndemandX - 4
- Bluactive - 5
- PegasusQ - 5
- HYPER - 5
- Impulse - 5
- ZZMoove/ZZmanX - 5
- Ktoonservative - 5
- Intellidemand - 5

Для игр:

Одно ядро:

Interactive/InteractiveX - 4
- Performance - 5
- Ondemand/OndemandX - 5
- SmartassV2 - 5

Несколько ядер:

Lionheart/LionheartX - 5
- Intelliactive - 5
- Interactive/InteractiveX - 4
- Slim - 5
- PegasusQ - 3
- ElementalX - 4
- Ondemand/OndemandX - 5
- HYPER - 5
- LulzactiveQ - 5
- Ktoonservative - 5

Короткий FAQ

Какой говернер лучше использовать для наилучшего энергопотребления без большого ущерба производительности?

Сложный вопрос, на самом-то деле! Lulzactive и SmartassV2 для баланса между энергопотреблением и производительностью. Для легких задач Lulzactive должен быть более дружелюбен к батарейке. Как, впрочем, и для тяжелых задач. Дабы получить максимальную производительность, используйте настроенный OnDemand или Conservative, но в таком случае не стоит жаловаться на энергопотребление! Кстати, Lulzactive не так просто настроить, так что если у вас не получается это сделать, то лучше не трогайте его, иначе вы ничего не получите толком!

Как менять говернеры?

Один способ - это использование init.d-скриптов, если ядро поддерживает их (echo «governor-name» > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor). А проще пользоваться такими программами, как Voltage Control/SetCpu/No Frills/Antuntu CPU Master…

Как понять, какой говернер лучше лично для меня?

Тестировать, и только так!

Я установил мой любимый говернер для скрин-он профиля и другой для скрин-офф. И почему теперь мой телефон не хочет просыпаться? Приходится перегружать гаджет каждый раз после продолжительного выключения экрана!

Это так называемый SoD (Sleep of Death, сон смерти). Не стоит использовать два разных регулятора вместе, если у них у обоих есть профили для сна! Вот пример неправильной комбинации (screen-on:screen-off): ondemandX:smartassV2. Примеры правильных комбинаций: ondemand:smartassV2, lulzactive:smartassV2.

При прокрутке рабочих столов аппарат заметно подтормаживает, можно ли уменьшить лаги или избавиться целиком от данной проблемы?

Да, можно. Стоит увеличить down-sampling-time говернера, дабы процессор дольше не снижал частоту. Это должно избавить от торможений при скроллинге.

Меня устраивает принцип работы некого говернера, но я хотел бы настроить его под себя. Как мне это сделать?

Для настройки говернера нужно изменить init.d скрипт /sys/devices/system/cpu/cpufreq/name-of-active-governor/name-of-the-paramater-to-tweak. Пример: echo "20000" /sys/devices/system/cpu/cpufreq/lulzactive/up_sample_time . Либо пользуйтесь вышеуказанными программами.

Я хотел бы узнать, как еще можно понизить энергопотребление моего аппарата. Я уже настроил говернер, но все равно не удовлетворен результатами.

Лучше всего ограничить максимальную частоту 1000-100 МГц, ибо их хватает для большинства ежедневных задач и приложений «за глаза» (данное условие применимо к большинству телефонов).

Наверняка многие пользователи устройств на Андроид сталкивались с вопросом быстродействия системы. Например, планшет может не справляться с несколькими одновременно запущенными приложениями, или во начинает тормозить графика. Помимо объёма оперативной памяти, на эти показатели существенно влияет тактовая частота процессора вашего устройства.

Лучше всего для разгона подходят сторонние приложения

Даже если некоторое время назад ваш Android-планшет был флагманом в своей нише, прогресс не стоит на месте, и новые программы и игры требуют всё больше и больше ресурсов оборудования. С другой стороны, это ещё не повод менять устройство на более быстрое (и дорогое!), поэтому есть смысл подумать о разгоне процессора.

Для этой процедуры разработаны специальные приложения, их можно найти и скачать в Google Play. Программы для Андроид, на примере которых мы расскажем, как разогнать ЦП, довольно просты в использовании, но для их корректной работы нужны root-права - права суперпользователя, позволяющие менять инженерные настройки, доступ к которым обычно ограничен для пользователей.

Программа AnTuTu CPU Master

Доступна на Google Play как в платной, так и в бесплатной версии. Функционал первой немного шире, но для нашей основной задачи вполне подойдёт и . После установки и запуска программы мы сразу же видим главное окно.

Значение на зелёном фоне - это текущая частота. Ниже расположены ползунки, регулирующие максимальное и минимальное значения. Чтобы ускорить работу операционной системы в целом, нужно увеличить минимальное значение частоты. Максимальное число эта программа поменять не сможет.

После установки нужных значений необходимо сохранить настройки и перезагрузить планшет, чтобы применить их.

SetCPU

Аналогичным образом работает и приложение SetCPU для Android. При его запуске мы видим две кнопки: стандартный разгон ЦП и переход в расширенные настройки. Основная функция реализована примерно так же, как и в предыдущем примере: значение текущей частоты, меняющееся в реальном времени по мере запуска или остановки каких-либо процессов, и возможность регулировки пороговых значений.

Кроме этого, программа SetCPU имеет ещё несколько сопутствующих полезных функций. В ней можно не только разогнать, но и создать профили частоты, которые будет использовать процессор. Вы сможете при необходимости переключаться между заранее , а также задавать смену профиля в зависимости от условий использования: например, снижать частоту при низком заряде батареи.

Пользоваться расширенными функциями этой программы лучше только опытным пользователям Андроид, поскольку регулировать уровень энергопотребления для каждой конкретной частоты возможно, только если пользователь отдаёт себе отчёт в том, к чему может привести каждое его действие.

За и против разгона процессора

К плюсам этой процедуры можно отнести:

  • несомненно, повышение производительности и быстродействия устройства;
  • быструю и плавную работу ресурсоёмких игр и программ.

Но есть и некоторые минусы, которые могут сделать работу вашего планшета менее комфортной:

  • увеличение частоты неизбежно приведёт к повышению энергопотребления, поэтому будьте готовы к непривычно быстрой разрядке батареи;
  • также повысится теплоотдача, то есть устройство будет греться сильнее обычного, даже при не очень высокой загрузке.

Меры предосторожности при разгоне процессора

Помните - каждое устройство индивидуально, и прежде чем думать о разгоне ЦП на Андроид, поищите информацию, касающуюся вашей модели: может быть, именно ее разогнать не получится. Например, если ваш планшет снабжён одноядерным процессором с , то его разгон не даст заметных результатов. В целом разумное повышение должно составлять не более 20–25% от первоначальной цифры. Неоправданно высокие значения могут повредить вашему устройству.

Разгон процессора в любом случае приведёт к сокращению времени автономной работы устройства: работая на высокой частоте, процессор будет расходовать больше энергии. Впрочем, у этого фактора есть и другая сторона: с помощью этих же программ вы можете продлить время работы батареи, если понизите пороговые значения частоты. Это актуально для тех, кто не пользуется ресурсоёмкими программами, нечасто играет в игры, но высоко ценит автономность. Ведь большинство стандартных процессоров на наших Андроид-устройствах вполне способно работать на средних значениях частоты без всякого разгона.

Заключение

Итак, если вы приняли решение ускорить работу своего устройства, любая из вышеописанных программ поможет вам в этом - конечно, при условии . Более того, они могут быть полезными даже для тех, кто не решится на эту процедуру: ведь с их помощью можно не только повышать, но и понижать частоту, тем самым экономя расход энергии. А как вам помогли эти программы? Расскажите о своём опыте в комментариях.

Вы обращали внимание, что свеженький Android, прямо из коробки или после перепрошивки, просто летает? Но проходит некоторое время, и от былой скорости не остаётся и следа. Интерфейс системы становится задумчивым, запуск программ замедляется, и даже то, что тормозить не должно в принципе, умудряется тормозить. Почему это происходит и как с этим бороться? Давайте разбираться.

Обновления операционной системы не совместимы со старым смартфоном

Каждое устройство поступает в продажу с актуальной на тот момент версией операционной системы, которая наиболее полно соответствует характеристикам данного гаджета. Если спустя некоторое время производитель выпустил для вашего смартфона или планшета обновление ОС, то вы, несомненно, приобретёте новые функции, но далеко не факт, что устройство будет работать так же быстро. Когда на старом смартфоне установлена новая версия Android, тормоза практически неизбежны.

Как это исправить

Вы должны сами сделать выбор между функциональностью и скоростью. Если у вас не слишком мощное устройство, то имеет смысл отказаться от новых версий ОС. Однако учтите, что чем старее становится версия Android на вашем смартфоне, тем меньше приложений будут с ней совместимы.

Иногда эту проблему может решить переход на альтернативные, облегчённые прошивки - например, LineageOS . Но самый лучший, а зачастую и единственный вариант - купить новый . Особенно если вы до сих пор являетесь счастливым обладателем гаджета с Android 2.3 или 4.2 на борту.

Новые версии приложений не совместимы со старым смартфоном

Разработчики постоянно ориентируются на новые устройства и оптимизируют свои программы под их возможности. Многие приложения после обновлений функционируют медленнее, чем до этого, занимают больше места и сжирают больше системных ресурсов.

Основная масса разработчиков совершенно не учитывает нужды пользователей, сидящих на старом железе. Например, мобильный Chrome - сейчас он занимает в памяти смартфона под 200 МБ, не считая данных программ и кеша. Для приложений смартфонов, скажем, 2014 года такая прожорливость кажется немыслимой.

Как это исправить

Можно запретить приложению - пользуйтесь старой версией. Но это способно привести к тому, что старый браузер будет несовместим с новыми веб‑страницами или старые клиенты облачных хранилищ не смогут авторизоваться. Так что это сомнительное решение.

Ещё один вариант - пользоваться специальными, облегчёнными версиями приложений, которые имеются у многих популярных программ. Например, Facebook Lite вместо полноценного клиента Facebook, Skype Lite вместо тяжеловесного Skype, Opera Mini вместо прожорливого Chrome и так далее.

Фоновые процессы занимают слишком много памяти

Вы установили после покупки устройства три десятка программ и не собираетесь останавливаться? Думаете, что если приложение не активно, то оно не потребляет системных ресурсов?

Это не так. Множество установленных программ автоматически загружаются при старте системы, расходуя ресурсы процессора и занимая память вашего устройства. Отдельно надо вспомнить различные живые обои и виджеты рабочего стола, большинство из которых не делают совершенно ничего полезного, но при этом нагружают систему.

Как это исправить

Отключите живые обои, виджеты и другие не очень нужные вам вещи. , которыми не пользуетесь. Загляните в список фоновых приложений и остановите те из них, что вам не нужны. Делать это можно вручную либо с помощью Greenify. Это приложение показывает, какие программы больше всего загружают смартфон, и позволяет контролировать их фоновую активность. Greenify может работать как на устройствах с root‑доступом, так и без него.

На смартфоне не хватает свободного места

Встроенные накопители вашего гаджета работают таким образом, что при почти полном заполнении их быстродействие может существенно снизиться. Это связано с методами, которыми производилась запись информации на внутреннюю память устройства.

Поэтому для быстрой работы системы важно, чтобы хотя бы 25% внутренней памяти оставались свободными. Это не только поможет поддерживать производительность, но и уменьшит износ встроенного носителя.

Как это исправить

Если ваш смартфон способен принять SD‑карту, постарайтесь переместить как можно больше данных на неё из внутренней памяти. Сохраняйте фильмы, музыку, подкасты, картинки и прочий свой контент на внешний накопитель. туда данные приложений, если есть возможность.

А такую вещь, как фотографии, вообще лучше хранить в облаке - особенно если их очень много. Файлы кеша тоже занимают иногда немало места - их время от времени.

Те смартфоны, что не поддерживают SD‑карты, как правило, обладают собственным внушительным запасом памяти. Но всё равно она может закончиться. Поэтому периодически освобождайте место на своём устройстве и следите, чтобы часть памяти не была заполнена.

Ещё вариант - сделать аппаратный сброс смартфона, предварительно позаботившись о . Потом установите на устройство только те приложения, что вам действительно нужны.

К сожалению, смартфоны рано или поздно начинают тормозить, причём устаревают они куда быстрее, чем компьютеры. Вы можете пытаться с этим бороться с помощью указанных способов, мириться, используя гаджет исключительно как «звонилку» и плеер, или купить наконец новый смартфон - выбор за вами.

Если вы продвинутый пользователь Android устройства, то явно хотели, или уже меняли частоту и режимы работы процессора через разные утилиты. Но при выборе режима работы процессора возникает вопрос, какой лучше выбрать? В этой статье вы увидите описание режимов работы процессора, и прочитав сможете выбрать себе нужный.
Governor – диспетчер выбора частоты процессора. Все они находятся в ядре (kernel) и не могут быть добавлены отдельно от ядра. Задача драйвера — устанавливать некоторую оптимальную частоту в пределах выбранного минимума и максимума (scaling_min_freq и scaling_max_freq).

Powersave — Частота всегда равна минимальной. Иногда включают для экономии батареи при низком заряде или выключенном экране.

Performance — Частота всегда равна максимальной. Используют для тестов, получения устойчивых значений в benchmarks, или во время зарядки и подключения к компу. Это более быстрый режим чем закрепление минимальной частоты равной максимальной (в ondemand например), так как не происходит частых запросов на её изменение.

Userspace — Для ручного задания частот, которые не поддерживаются ядром. Не рекомендуется и практически никто не использует.

Ondemand — Присутствует в большинстве ядер по умолчанию. Через заданные промежутки времени (sampling_rate: ~ 10-20 миллисекунд) проверяет загрузку процессора и при достижении определенного порога (up_threshold ~80%) повышает частоту до максимума пока загрузка процессора не снизится.
Не содержит профилей для выключенного экрана, поэтому его часто устанавливают с powersave.

Conservative — Подобный предыдущему ondemand но изменение частоты вверх и вниз происходит не скачком а ступенчато (freq_step 5% от максимальной частоты, можно сконфигурировать от 0 до 100, при этом при 0 частота будет фактически заблокирована, а при 100 меняться скачком подобно ondemand). Добавлен ключ минимального порога загрузки процессора down_threshold (20%) при котором частота будет ступенчато снижаться.
По сравнению с ondemand медленнее отклик, но больше экономии батареи.

MinMax — Адаптация «conservative» и один из самых быстрых, но батарею держит предположительно хуже чем SmartassV2.
Старается минимизировать количество изменений частоты через ограничение частот – только минимум или максимум. Частота снижается и повышается в зависимости от текущей нагрузки и пороговых значений (down_threshold и up_threshold)

Interactive — Как и предыдущие, выставляет частоту в зависимости от нагрузки, но проверка загрузки наступает не через равные промежутки времени, а в случае выхода из простоя «idle» (+ таймер проверки через 1-2 такта после выхода из простоя). Если процессор загружен на 100% по выходу из простоя и по таймеру, то частота повышается до максимума. Если нет загрузки для повышения до максимума, то диспетчер проверяет как изменилась загрузка с последнего изменения частоты за промежуток времени min_sample_time, выбирая верхнее значение с последнего выхода из простоя для определения новой частоты.
Один параметр настройки — min_sample_time, минимальное количество времени на заданной частоте перед её снижением, по умолчанию 50-80 тыс. миллисекунд.
Режим Interactive быстрее чем Ondemand, и дает больший отклик при ничтожном увеличении потребления.

InteractiveX — Улучшенный Interactive – добавлен профиль низкой частоты при выключенном экране, и также настроен для выхода из этого режима. Меньше расходует батарею чем Interactive.

Smartass / SmartassV2 — Коротко – основан на Interactive но лучше. Полностью переписан interactive, внесены модификации и профили. Вторая версия очень популярна. Скорость рядом с MinMax, трудно сказать кто быстрее. Больше времени проводит на низких частотах для экономии батареи. Встроен профиль сна – частота минимальна при выключенном экране.
Содержит много настроек, основные:
— «идеальная» частота, к которой будет стремиться. Более быстрое изменение до этой частоты, чем выше или ниже её. Для первой версии smartass например «идеальная» может быть задана как 300 (и не выше) во время сна и 500 (и не ниже) при включенном экране. У второй версии больше гибкости, ограничения «не выше» и «не ниже» нет. Если вы слушаете плеер с выключенным экраном то можете найти определенную «идеальную» частоту для этого режима, ниже которой не будет лагов.
— sleep_ideal_freq идеальная частота для сна
— awake_ideal_freq для пробуждения при включении экрана

Smoothass — От создателя smartass v1-2 Erasmux.
Это измененный smartass v1 для увеличения скорости. Агрессивнее повышение частоты, выше отклик, выше расход батареи.

BrazilianWax — Вроде бы то-же самое что и Smoothass.

SavagedZen — Основан на Smartass. Хорошо сбалансирован по скорости и расходу заряда. Адаптирован к ядру 2.6.29 и процессору 1 GHz.

Scary — Основан на исходниках conservative с добавлением фич smartass. Не очень ясно зачем, так как у conservative медленное изменение частоты, а у smartass одно из самых быстрых.

Для батареи – 1е место InteractiveX, 2-е Smartass, 3-е SavagedZen
Для скорости – 1е место Minmax, 2-е Smartass2, 3-е SavagedZen»