В предыдущей статье мы узнали, что из себя представляет ядро прошивки, какие функции оно выполняет и чем для нас может быть полезна его кастомизация. В этом материале пойдет речь о том, как ядра можно настраивать, а конкретнее, что такое Governor.
Governor – это перечень настроек драйвера ядра (CPUFreq driver), управляющий частотой процессора. Именно он определяет, когда и на каких частотах процессор должен работать, с какой задержкой и при какой нагрузке он должен понижать или повышать частоты.
Существует множество настроек Governors и ниже вы можете ознакомится с кратким описанием самых популярных:
- Ondemand – самый популярный говернор. Обычно именно он установлен на официальных прошивках. У него достаточно хорошо сбалансированы настройки управления частотой, предлагающие хороший компромисс между производительностью и расходом батареи. Однако у него отсутствует профиль для спящего режима, а также он немного проигрывает в плане производительности для смартфонов.
- Powersave – устанавливает максимальную частоту процессора, равную минимальной. При использовании этого говернора ваше устройство будет сильно тормозить и работать нестабильно (например, через раз разблокироваться). Не подходит для повседневного использования и рекомендуется использовать только в случае крайней необходимости.
- Perfomance – полная противоположность говернору Powersave. Минимальная частота процессора устанавливается равной максимальной. Также не подходит для повседневного использования из-за избыточного потребления заряда батареи, однако можно использовать для получения более высоких баллов в бэнчмарках
(если надо повыпендриваться). - Conservative – это замедленный говернор Ondemand. Логика управления частотами процессора такая же, только скорость изменения замедленна в два раза. Данный говернор больше подходит для энергосбережения и меньше для производительности.
- Interactive (InteractiveX) – это ускоренный говернор Ondemand. Подъем и падение частоты бестрее в два раза, из-за чего повышается производительность, но немного увеличивается расход батареи.
- Smartass (SmartassV2) – этот профиль основан на говерноре Interactive, с некоторыми модификациями. Выставляет оптимальную частоту для процессора. Это один из самых популярных говерноров из-за высокой производительности и меньшего расхода аккумулятора устройства.
- Luzactive – модифицированная версия Ondemand, с возможностью указания разработчиком ядра минимальной задержки для повышения/понижения частоты процессора. Также этот профиль позволяет указывать максимальную частоту при выключенном экране.
- Hotplug (HotplugX) – отличительной способностью этого говернора является способность отключать ядра при низкой нагрузке, из-за чего расход батареи снижается.
- Pegasusq – гибкий говернор с большим количеством настроек для разработчиков ядер. Подходит только для многоядерных процессоров. При грамотной настройке разработчиками также могут получаться хорошие результаты.
На самом деле, перечень говерноров намного больше, я указал только самые популярные из них на сегодняшний день. Некоторые разработчики ядер создают свои профили управления частотой процессора, поэтому лучше узнавайте о специфических говернорах на страницах разработчиков и специализированных форумах.
Из своего опыта могу порекомендовать говернор Hotplug для энергосбережения и Smartass (SmartassV2) для лучшей производительности.
Управление ядрами выполняется с помощью специализированных программ – существуют унифицированные программы и те, которые написаны разработчиками для конкретного ядра. По возможности лучше пользоваться последними, однако если таковых нет, вот перечень популярных унифицированных:
- SetCPU for Root Users
- CPU Tuner
- System Tuner Pro
На этом у меня всё, в следующей статье постараюсь изложить информацию об I/O Scheduler, поэтому следите за обновлениями и принимайте участие в обсуждении.