motofan logo
3 страниц V < 1 2 3        
> 

zSHapmd v11, скриптовой аналог стандартному Apmd (управляет частотой процессора)

VINRARUS
сообщение 29.9.2016, 20:03 Закрепленное сообщение!


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



zSHapmd v11 (2016) принципиально новый демон управления частотой ЦП в рамках 133-532 МГц или 133-740 МГц. dribble.gif
Логика работы
С интервалом в 0,1 сек проверяем не загружел ли ЦП при 133 МГц на 100%, если да - включаем 399 МГц.
При 399 МГц раз в секунду проверяем нагрузку, при простое переводим опять на 133 МГц, при 100% нагрузке включаем повышенные частоты (532 МГц или 740).
Ну а на повышеных смотрим раз в секунду на нагрузку, если ниже чем нужно - включаем 399 МГц.

Економия в том шо он не прыгает на 740 МГц при любом пчихе, как у стандартного apmd (а єто реальная єкономия), ну а скорость в том шо 133>>399 МГц по моему быстрее сменяется чем у apmd.
[close]
Благодаря етому исследованию удалось в разы увеличить эфективность механизма: было решено делать переходы не по маленьких ступеньках (133, 266, 399, 532, 636, 740), а шагать сразу через несколько ступенек (133, 399, 740) - в результате получаем отличное быстродействие в сумме с экономией батареи (правда на 133 МГц ЦП загружен где то на 20% и влияние этого на батарею спорное). yesyes.gif

Так же исследовав показатели /proc/stat удалось вообще убрать арифметические операции когда нужно отслеживать 100% нагрузку ЦП (на 133 МГц). dirol.gif

Так же было добавлено автоопредиление макс. частоты (532 или 740), ну и написан небольшой скрипт запуска\остановки.
ПС: желающим добавить в автозагрузку нужно добавлять именно файл "zSHapmd" wink.gif

Ну я месяц походил с ним безболезненно, но непредвзято вынести вердикт мне сложно, может у вас получится... smile.gif

Сообщение отредактировал VINRARUS - 30.9.2016, 20:00
Прикрепленный файл zSHapmd_v11.zip   ( 1.07 килобайт ) Кол-во скачиваний: 583
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 22.2.2012, 16:21


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Цитата(a1batross @ Сегодня, 13:41)
* перепакуй ее в zip и выложи

smile.gif Вот
Прикрепленный файл zSHapmd_.zip   ( 2.42 килобайт ) Кол-во скачиваний: 268
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
a1batross
сообщение 23.2.2012, 10:11


Мастер
****

Группа: Пользователи
Сообщений: 285
Регистрация: 6.8.2011
Из: Москва, Россия
Пользователь №: 228 723
Модель телефона: XperiaX,RN4X,ShieldTablet
Прошивка: Stock


Настроение:
OwO



Рейтинг: 350



Флуд: спасибо.
Кстати эта вещь насколько лучше работает чем AiCPU, zCPU?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 18.6.2013, 13:49


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Вот написал скриптовой аналог стандартному apmd (утилита для автоматического управления частотой процессора в зависимости от его загруженности), и назвал ее zSHapmd.
Нужно просто запустить скрипт из прикрепленного архива - он сам деактивирует стандартный apmd и будет управлять частотами, но до перезагрузки.

zSHapmd v8 2013
Изменения: переделал под моды с разгоном ЦП (не знаю нужно ли кому). smile.gif Регулирует в таких режимах: 133,266,399,532,636,740 МГц.

Но еще я полностью переписал код, и максимально оптимизировал (что бы ЦП как можно меньше грузила эта штука).
Также теперь частоты быстрее переключаются, промежуток 300 миллисекунд\0,3 секунды (раньше было только целыми секундами).
Ну и само переключение теперь более ровное и умное.

Но заметьте, чем меньше время - тем больше нагружен ЦП в простое, если поставить время больше - телефон будет немного более задумываться, но зато еще больше экономить заряд.
Можете изменить интервал в ручную, например установив пол секунды "500000" для лучшей экономии батарейки, менять в 7й строчке (1 000 000 микросекунд = 1 секунде):
Код
busybox usleep 300000


Ну и любители настроить под себя смогут просто перенастроить, так как код стал намного более понятен. wink.gif

Сообщение отредактировал citroen - 30.9.2016, 10:15
Прикрепленный файл zSHapmd_.zip   ( 649 байт ) Кол-во скачиваний: 275
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 18.6.2013, 17:34


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Вот теперь это годится для полной замены Apmd! clapping.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Unreal_man
сообщение 29.9.2016, 23:29


Гуру
******

Группа: Разработчики
Сообщений: 720
Регистрация: 16.12.2009
Из: Другого Края Земли
Пользователь №: 211 211
Модель телефона: Motorola Moto Z Play


Настроение:
:-I



Рейтинг: 515



Единственное что пока заметил, в твоём моде при входе в гл меню иконки вяло увеличиваются. На родном демоне при 133-740 анимация была плавной. В целом работает вроде хорошо. Действительно при запуске таскмена частота сразу прыгает до 399 на 100%. Вольтаж не повышается, что весьма замечательно. Видео 320х240, 320кбитс, 24-25кадровс играет как и прежде. Действительно умное управление частотой. То чего не хватало. Это плюс. Буду дальше тестировать.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 30.9.2016, 10:21


Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Сообщение закреплено как шапка.
Как для sh скрипта то работает поразительно быстро. Вот она, сила оптимизации. smile.gif

Сообщение отредактировал VINRARUS - 30.9.2016, 11:20
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
zSHapmd v11, скриптовой аналог стандартному Apmd (управляет частотой процессора) · Motorola на Linux OS · Forum
 

3 страниц V < 1 2 3
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.3.2024, 22:01

Форум живёт: