[Конкурс обзоров] Battery Eye и Kernel-Power часть 2
Итак, каждый владелец n900 хоть раз в жизни задумывался, а стоит ли разгонять своего зверька? Как-никак в разогнанном состоянии он работает в разы быстрее и практически никогда не приходится ждать, пока он «подумает», но в то-же время есть и 2 основных минуса: 1. Лишение права на бесплатное сервисное обслуживание 2. Прожорливость батареии. И если вас не беспокоит первый пункт то эта статья для вас.
В данной статье мы на примере замечательной программы Battery Eye протестируем нашего друга по всем мультимедийным параметрам. А так-же тут будет поведанно о настройке автосмены частоты процессора при блокировке телефона. Тесты проводятся по параметрам: прослушивание музыки, просмотр видео, игра Angry Birds, игра Quake III, Fbreader, и сёрфинг в интернете через стандартный браузер MicroB, и конечно-же поведение телефона в 12-ти часовом режиме ожидания.
Итак начнём мы с описания самой программы.
Чего из себя представляет программа Battery Eye?
Программа представляет собой графическое двухмерное отображение изменения состояния батарейки. Проще говоря строит график расхода батарейки.
Программа не богата настройками и из настроек мы видим в ней лишь Zoom, Delete data… и 3 параметра отображения графика, в процентном соотношении, вольтах или амперах
Все предельно просто, работать начинает после установки в пассивном режиме и практически не требует ресурсов, зато на её примере можно посмотреть энергопотребление телефона при разных настройках.
В качестве настроек я использовал ядро 2.6.28.10power37 в двух режимах, родном и разогнаном практически вдвое, вот параметры (о их значении можете посмотреть в статье Kernel-power несколькими днями ранее опубликованной на этом ресурсе)
Как мы видим из скриншотов в качестве примера разогнанной конфигурации я взял режим 250-1150 мегагерц с разогнанной видеопамятью, игнорированием нагрузки низкоприоритетных задач, уменьшеным порогом переключения на более высокую частоту и вдвое меньшей задержкой при переключении на другую частоту. Так-же хочу добавить скриншот ещё одного конфига. Он включается автоматически, когда я блокирую телефон, подробнее ниже.
Режим работы телефона в обеих конфигурациях тестировался по следующим пунктам:
- Час прослушивания музыки
- Полчаса игры Angry Byrds
- Полчаса игры Quake III
- 15 Минут видео
- Полчаса FBreader
- Час сёрфинга по интернету с частичным использованием flash
Хочу добавить, что этот тест ИСКЛЮЧИТЕЛЬНО индивидуален. В том плане что результаты не стоит принимать как догму, поскольку есть дюжина факторов, которые косвеным образом влияют на результаты, а именно поиск сети, запущенные программы, минутные разговоры по телефону, изменение яркости экрана датчиком света и т.п. Те, кому хочется получит 100% точный результат для своего телефона необходимо скачать battery eye и потестить самостоятельно.
А теперь результаты данного теста:
Первый «холм» процессор 1150 второй 600. И как мы видим, графики практически идентичны друг другу. Как потом оказалось в конце теста, новое ядро собранно так, что даже в режиме ondemand не берёт сразу максимально возможную частоту, а переключается(хоть и со скачками через некоторые разрешённые значения)на более низкие разрешённые частоты а так-же включённую функцию Ignore nice road. Так-же из графика мы можем видеть, что сёрфинг по интернету через Wi-Fi роутер всё-таки экономичнее на процессоре в 600 мегагерц. Так-же хочу добавить о немаловажном факторе. В режиме 1150 температура процессора поднималась до 39 градусов в то время как на частоте 600 только до 33. В разогнанном состоянии клавиатура девайса была нагрета и это можно было почувствовать наощупь.
Следующий тест-режим простоя:
Первый график 500(бывший 1150, точнее второй режим 1150 при залоченном девайсе, подробнее ниже) второй 600. И так-же на новом ядре в обеих случаях похожие результаты. В режиме простоя новое ядро в обеих случаях находится на частоте 250 мегагерц. То есть из всех разрешённых множителей этой частоте отходит 93% в первом и 95% во втором случае.
За 12 часов энергосберегающий режим потратил 8% батареи а классический 10% батареи.
Итого как мы видим, экспериментируя с частотами можно найти «идеальный» баланс между батареей и производительностью, НО пара советов:
- Постоянно держать аппарат на частоте до 1150 не стоит, поскольку заметный нагрев аппарата первый позыв к сервисному центру
- В режиме Sampling_rate 150000 я наблюдал некоторые лаги, но тут даже сравнивать нельзя с другими ядрами, поскольку на других ядрах понижение этого параметра давало внезапные ребуты
- Энергосберегающий режим о котором пойдёт речь не даст вам большого преимущества, если вы только не любитель сидеть в аське или с утра и до ночи держать аппарат в вечной связи с вайфаем.
- Если хотите посмотреть, как аппарат ведёт себя в разогнанном состоянии и сколько потребляет электричества-не полагайтесь на все 100% на эту статью, поворюсь, это только мои замеры только на моём девайсе у вас значения могут отличаться, но в общих чертах вы должны увидеть приблизительно такую-же картину.
Итак, мы дошли до завершающего этапа обзора. Режим автопереключения частоты процессора.
ЕСЛИ ВЫ НЕ ЗНАЕТЕ ЧТО ТАКОЕ КОММАНДЫ, ТЕРМИНАЛ, ИЛИ ПРОСТО НОВИЧОК В ДАННОМ ДЕЛЕ ЛУЧШЕ ОСТАНОВИТЬСЯ И ПОДУМАТЬ ДВАЖДЫ, А СТОИТ ЛИ?
Как показал мой опыт сильного прироста к продолжительности жизни батареи это вам не даст, но всё-же если вы решите попробовать-вы делаете всё на свой страх и риск. Поехали:
1. Устанавливаем kernel power если он ещё не стоит
root
#apt-get install kernel-power-settings
2. Далее (не обязательно) включаем модуль bq27×0_battery и ставим на автозагрузку
#modprobe bq27×00_battery
#echo bq27×00_battery > /etc/modules
3. Далее устанавливаем прогу dbus-scripts
#apt-get install dbus-scripts
4. Далее нужны 2 файла для dbus которые будут выполнять действия а именно применять скрипты разгона на блокировку-разблокировку аппарата
#echo /usr/local/bin/underclock \* \* com.nokia.mce.signal tklock_mode_ind locked > /etc/dbus-scripts.d/locked
#echo /usr/local/bin/overclock \* \* com.nokia.mce.signal tklock_mode_ind unlocked > /etc/dbus-scripts.d/unlocked
5. Далее сами скрипты и делаем их исполняемыми
#echo ” #!/bin/sh ” > /usr/local/bin/underclock
#echo kernel-config limits 250 500 >> /usr/local/bin/underclock
#chmod a+x /usr/local/bin/underclock
#echo “#!/bin/sh” > /usr/local/bin/overclock
#echo kernel-config limits 250 900 >> /usr/local/bin/overclock
#chmod a+x /usr/local/bin/overclock
(В пункте пять вместо echo kernel-config limits 250 900 и echo kernel-config limits 250 500 можно писать собственные частоты ну или конфигурации вроде echo kernel-config load savebattery_config если такие конфиги вы предварительно сохранили.)
Радуемся, у нас меняется частота при блокировке, разблокировке экрана! Проверить можно программой conky (apt-get install conky) которая показывает частоту работы процессора и некоторые системные характеристики, при выключенном экране спустя секунд 5 после выключения включите пару раз экран и если у вас частота не поднимается выше 500,значит сработало, если хоть раз была выше, значит что-то сделали не так
Советую перед какими-либо манипуляциями ознакомиться с моей статьёй про Kernel-power чтобы глубже вникнуть в смысл того что тут написано, а так-же все вопросы и комментарии писать на форум по адресу Kernel-Power
И если вы боитесь ошибиться, зайдите на сайт со своего аппарата и просто копируйте текст и вставляйте в терминал(для новичков, # в начале команды писать в терминал НЕНАДО, # обозначает что вы выполняете комманду с правами root!)
Вобщем, пользуйтесь, разгоняйте!
P.S. Прислал на Конкурс обзоров Роман Ефремов “Libert”. Отдельная благодарность за помощь с методом автосмены частоты процессора пользователю Alexbou
отличное продолжение,) и где только ты время на тесты находишь))),
Отличная статейка! По поводу dbus-scripts, судя по откликам на предыдущую статью по kernel-power, – не сразу начинает работать – поэтому надо поставить, перезагрузиться, и снова apt-get install dbus-scripts, и снова ребут – вроде тогда и начинает работать…. Возможно что и с первого раза начинает работать, как у меня
2 пункт не нужен для функций лока-разлока: это дает функцию просмотра состояний батарейки типа температурного датчика, заряда, вольтажа и прочего через /sys/class/power_supply/bq27200-0/
есть практика использования температуры батарейки для выбора частоты разгона (чем горячее батарейка (мобильник, окружение)), тем меньшая частота выбирается в MAXFREQ (подробности на http://wiki.maemo.org/Overclocking#Underclock.2FOverclock_when_phone_is_Locked.2FUnlocked__.28by_Fecn.29)
Alexbou у меня с первого раза встала прога dbus, правда я напортачил со скриптами, вместо кавычек двоеточие поставил, потом при проверке ошибка появилась, поправил=)
И ещё, для проверки скриптов
#/usr/local/bin/underclock
#/usr/local/bin/overclock
Для проверки dbus-scripts:
#ps | grep dbus-scripts
Ответ должен быть вроде
976 root 3328 S /usr/sbin/dbus-scripts –system
И #cat /etc/dbus-scripts.d/locked
Ответ: /usr/local/bin/underclock * * com.nokia.mce.signal tklock_mode_ind locked
#cat /etc/dbus-scripts.d/unlocked
Ответ: /usr/local/bin/overclock * * com.nokia.mce.signal tklock_mode_ind unlocked
И ещё, НЕ стоит уменьшать SAMLING RATE я тестил 3 дня, появляются непонятные лаги,тормоза, жрётся батарейка побольше, вобщем неспроста 300000 ставят, по идее должно ускоряться, но на практике всё наоборот, ну и трекхолд оптимально 85 экономично 97, ща у меня 92 стоит
alexbou
Если все комманды в скрипт составить, работать будут? Ну к примеру пункты 2,4,5 забить в скрипт и из под рута запускать
Libert, отвечу в форуме
не скажу ничего нового, если скажу что обзоры автора о разгоне телефона и это вот тестирование – это лучшие статьи!
Написано так что поймет и опытный и новичок, незнакомый с линуксом вообще и с терминалом в частности. А еще хорошо то, что грамотный и легко читаемый текст.
огромное спасибо!
Подскажите пожалуйста как удалять скрипты и переписывать их заного ? А то я в скрип напортачил.
Создал я 2 конфига, на 1100Mhz odemand и 125Mhz powersave.
Хочу чтобы при блокировки экрана включался конфиг PowerSave, а при разблокировке 1100 Mhz.
Прописывал:
echo ” #!/bin/sh ” > /usr/local/bin/underclock
echo kernel-config load powersave >> /usr/local/bin/underclock
chmod a+x /usr/local/bin/underclock
и
echo “#!/bin/sh” > /usr/local/bin/overclock
echo kernel-config load 1100mhz >> /usr/local/bin/overclock
chmod a+x /usr/local/bin/overclock
проверил их командой #/usr/local/bin/underclock
#/usr/local/bin/overclock
первый скрипт пишет succesful load
второй пишет invalid command
ставишь прогу midnight commander как на скриншоте а далее через неё зходишь в нужную папку, находишь скрипт и нажимаешь правка или заново вводишь комманды с одним > чтобы переписалась строка, или с >> чтобы дописать если не дописалось
Не заработало при проверке вот такая бяка. Что не так, все команды копировал с сайта?
Nokia-N900:~# /usr/local/bin/underclock
loading /home/user/.kernel/configsafebat
/usr/sbin/kernel-config: /home/user/.kernel/configsafebat: line 1: #: not found
successfully loaded.
loading /home/user/.kernel/configsafebat
/usr/sbin/kernel-config: /home/user/.kernel/configsafebat: line 1: #: not found
successfully loaded.
Nokia-N900:~# /usr/local/bin/overclock
/usr/local/bin/overclock: line 1: “#!/bin/sh”: not found
loading /home/user/.kernel/config900speed
/usr/sbin/kernel-config: /home/user/.kernel/config900speed: line 1: #: not found
successfully loaded.
Nokia-N900:~#
Все сам разобрался!