Pull to refresh

Comments 52

А не проще ли было настроить план электропитания и указать настройки для питания от сети и от батареи?

Для меня например использование настроек для нескольких способов питания в одном плане контр-интуитивно. Было бы логичней КМК сделать каждый "план" просто пачкой настроек. И набор переключателей о событиям — на подключение шнурка питания, на работу от батареи, на определённый уровень заряда. Понятно, что какая система есть — такая есть.
Кстати, некоторые вендоры ноутбуков примерно так и делают — из специальной утилитки переключают планы. И можно настроить, в каком режиме питания какой план использовать.

Кто-то админ, кто-то кодер. Многие вещи нам непонятны не потому, что наши понятия слабы, но потому, что сии вещи не входят в круг наших понятий.
Использую Power Scheme Switcher для быстрого доступа к схемам питания. Автоматическое переключение он тоже умеет.
Вопрос немного не в тему, но все же: у кого есть опыт работы в Android на обычном ноутбуке, есть ли прирост по времени работы батареи?

Учитывая, что Android работает на обычном ядре Linux, а приложения Android потребляют немного больше ресурсов, чем Linux-приложения, думаю, вариант с Linux просто обязан быть экономнее :)


На практике в сравнении Windows и Linux «из коробки» первая обычно экономнее (хотя случаи разные бывают), но Linux позволяет настроить систему тоньше, так что прикладыванием рук добиться с помощью последнего можно больше.

вот честно сколько я не прикладывал руки к линуксу, в том числе с пересборкой ядра, винда все равно раза в два дольше живет
Обычно прироста никакого нет, только сокращение, иногда в несколько раз. Связано с отсутствием драйверов под конкретное железо. Линукс, кстати, тоже нередко сокращает жизнь от батареи и требует серьезного допиливания хотя бы для того, чтобы время жизни сравнилось с виндовым.
UFO landed and left these words here

Технологии SSD больше 5 лет, объемы по 256-512 гигабайт для SSD давно не очень дорогие — за 200 баксов можно взять модели на 500gb.
Полный дистрибутив линукс у меня редко больше полтора гигабайта — значит 450+ гигабайт — этого хватит даже для кино в перелёте.
С виндой, конечно всё не так хорошо, из 100 гигабайтного раздела Win10 + Office 16 свободно около 40, но это ноут для игр и все игрушки на d:\

UFO landed and left these words here
UFO landed and left these words here

Комфорт тоже стоит денег. А SSD корнями к Атому не прирастёт — можно в следующий ноут воткнуть будет.

Я тоже так думал, а потом оказалось, что скорость работы sata ограничена чипсетом. Моя жаба была сильно не довольна глупой дырой в семейном бюджете.
Прелесть ссд не столько в скорости чтения, сколько в нулевом времени доступа.
На самом деле, прирост по сравнению с HDD не всегда есть в принципе, и дело тут не только в чипсете — срабатывает множество факторов, типа скорости самого SSD, использовании жёсткого диска приложениями, использованного объёма, в конце концов скорость всего остального железа и т.п.
Сколько не заменял в древних компах жесткий диск на ссд, разница всегда была заметна.
У меня у самого ноут на PentiumM — и установка ссд его реально подстегнула. Не, летать не стал, конечно, но пользоваться им стало гораздо менее грустно. Диск — что-то дешевое на 64 гига.
Ставил SSD на ноут с Atom и 2Гб оперативки. PB Dot SE, если правильно помню модель. SSD от Intel на 256, модель не помню, но хорошая. До этого стояла какая-то баракуда на 7200.

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

В общем, по моему опыту подобных переделок, разница чаще всего определённо есть, но заметна далеко не всегда.
У меня вообще полтора гигабайта ОЗУ. Да ещё и процессор одноядерный. Он, конечно, быстрее атома в однопоточке, но сейчас много задач от двухядерности прирост получают.

ССД даёт прирост на файловых операциях. Касательно файрфокса — это запуск и работа с кэшом на диске. То, как себя ведёт уже запущенный файрфокс — жрёт память и тормозит — уже не исправить никаким ссд.

Я сейчас palemoon щупаю. Вроде как чуть полегче, но вот в плане плагинов всё очень грустно.

Чисто так, для себя, пытаюсь понять кейс использования андроида на чём-то большем, чем планшет и телефон — зачем?
Есть нормальные и вполне легковесные дистрибутивы, вроде того же Alpine, для тех, кому приелись убунты с центосями и прочими гентами, зачем андроид?

UFO landed and left these words here
UFO landed and left these words here
Тратит, конечно. Тут вопрос в том, что современный ssd эту операцию выполняет в 100 раз быстрее, чем hdd. А в простое — ничего почти не тратит. Например, для моего samsung 850 в простое Max. 60mW. А во время записи — 3.5W, но периоды записи у него гараздо короче, поскольку обычно он пишет со скоростью выше 100Мб/c(рандом)
UFO landed and left these words here
Вот потому и имеет смысл ставить более современные ssd и ставить им агресивное энергосбережение в профиле. В отличии от hdd, где энергосбережение значит остановку шпинделя, ssd переживают фактически неограниченное количество стартов/стопов. Потому даже в случае сравнимого потребления в активном режиме — выигрывают у дисков. Это не говоря о том, что по факту они потребляют меньше дисков. У кингстона в этом смысле помнится были проблемы. Но даже у современного кингстона 0.6/2Ватта. У самсунга и интела около 0.06/3.
UFO landed and left these words here
HDD в принципе не может уйти дальше, чем энергия нужная на поддержания вращения. А для ssd — это не проблема. samsung 850 дает 90к операций в идеальных условиях и больше 5к — почти в любых. И это уже диски со стоимостью меньше $100. Даже 10k hdd диск с потреблением в 15ватт дает меньше 500iops.
UFO landed and left these words here
При этом за приличный энергоэффективный SSD вы заплатите немало так денег.

И значительно повысите комфорт от использования ноутбука


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

Нет, эти действия, наоборот, снижают комфорт.

>И значительно повысите комфорт от использования ноутбука
В том то и дело, что комфорт повысится незначительно… Даже более емкая батарея поднимет его больше, правда и вес при этом вырастет…
AFAIK SSD жрёт батарею сильнее, чем низкооборотистый ноутбучный HDD
(по крайней мере несколько лет назад так было на Makbook'ах)

Гораздо более интересный вопрос — кто является основным потребителем батареи.
И что-то мне подсказывает, что аппаратными решениями типа управления яркостью экрана, частотой процессора здесь не отделаться. Это уменьшает комфорт от использования ноутбука.


Я считаю, что режимы экономии энергии должны распространяться также и на софт. Например, браузеры могут рендерить сайты с пониженной частотой кадров; IDE — урезать функции всяких там ассистов до базовых; обновления не должны проверяться; операционная система должна иметь возможность отключать модули памяти и т.д.

UFO landed and left these words here

Вариант не очень. Нет AVX, нет TRIM (да-да, знаю, что можно пропатчить, но тривиально не включается), а в будущих ноутбуках вообще не будет выбора (только Win10 и всё тут). А вот отключение лишних сервисов, которые могут проснуться ну очень невовремя, вполне может помочь.

UFO landed and left these words here
Как обладатель старого ноутбука с полуживой батареей я сильно обеспокоен продлением времени его использования без питания.

Что только не сделаешь, лишь бы на Али не покупать батарею за тыщу.))
Батарея менялась года два назад, причем самому ноутбуку шесть лет. Держит около 2 часов на Power saver схеме. У него, кстати, сенсорный экран, возможно это он много энергии потребляет. :)

Если бы. Батарея для моего ноутбука стоит, например, около $90.

а я то думал только мне пришлось такие костыли делать:
rem (Установка активной схемы питания "Высокая производительность")
POWERCFG /SETACTIVE 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
rem (значение 0 означает никогда не отключать дисплей при питании от сети (ac) и от батареи (dc))
POWERCFG /CHANGE -monitor-timeout-dc 0
POWERCFG /CHANGE -monitor-timeout-ac 0
rem (значение 0 означает никогда не отключать HDD при питании от сети (ac) и от батареи (dc))
POWERCFG /CHANGE -disk-timeout-dc 0
POWERCFG /CHANGE -disk-timeout-ac 0

Использую Battery Mode для этих целей. Выглядит как переключатель из Windows 7/8, умеет автоматическое переключение схем питания, регулировку подсветки, хоткеи и все что нужно.
Не видно практической пользы от такой кастомизации. Единственное когда приходилось залезать внутрь плана электропитания — это если батарея не держит заряд ниже половины, и ноут внезапно выключается, тогда надо поставить предупреждение на 80% и сохранение на 70%, например. Делается штатными средствами.
явная неисправность батареи… или «не та» марка батареи — слишком слабая для такого ноута, надо больше «банок»
посмотрите на али, там довольно много батарей даже для старых моделей, в тч «повышенной емкости»
вес ноута поднимется конечно, но далеко не всегда это настолько критично…
изредка растут еще и габариты, но то же далеко не всегда это хоть сколько-то критично для использования…
В том случае батарее было более 6 лет, возможно лежала разряженой. Ноут старый, человек тратиться на новую батарею не собирался. А изменение плана, что я описал, помогает не потерять открытые документы при переносе ноута из одной комнаты в другую, если забыл подключить питание.
И где в этой статье что то агрессивное?
Всего то написал программу в 10 строчек которая автоматизирует рутинное действие и даже никаких подробностей настройки планов питания.
Ну во первых все планы питания можно сделать доступными в трее по клику правой кнопкой все планы питания, с помощью вызова того же powercfg с помощью такого reg файла. Кстати редактируя тот же раздел реестра туда можно вообще вызов любых прог и команд добавить.

Заголовок спойлера
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\1]
"ItemName"="Производительность"
"Application"="%SystemRoot%\\system32\\powercfg.exe"
"Parameters"=hex(2):2d,00,73,00,20,00,38,00,63,00,35,00,65,00,37,00,66,00,64,\
  00,61,00,2d,00,65,00,38,00,62,00,66,00,2d,00,34,00,61,00,39,00,36,00,2d,00,\
  39,00,61,00,38,00,35,00,2d,00,61,00,36,00,65,00,32,00,33,00,61,00,38,00,63,\
  00,36,00,33,00,35,00,63,00,00,00
"IconID"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\2]
"ItemName"=hex(2):21,04,31,04,30,04,3b,04,30,04,3d,04,41,04,38,04,40,04,3e,04,\
  32,04,30,04,3d,04,3d,04,4b,04,39,04,00,00
"Application"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\
  00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\
  70,00,6f,00,77,00,65,00,72,00,63,00,66,00,67,00,2e,00,65,00,78,00,65,00,00,\
  00
"Parameters"=hex(2):2d,00,73,00,20,00,33,00,38,00,31,00,62,00,34,00,32,00,32,\
  00,32,00,2d,00,66,00,36,00,39,00,34,00,2d,00,34,00,31,00,66,00,30,00,2d,00,\
  39,00,36,00,38,00,35,00,2d,00,66,00,66,00,35,00,62,00,62,00,32,00,36,00,30,\
  00,64,00,66,00,32,00,65,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\3]
"ItemName"=hex(2):2d,04,3a,04,3e,04,3d,04,3e,04,3c,04,38,04,4f,04,00,00
"Application"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\
  00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\
  70,00,6f,00,77,00,65,00,72,00,63,00,66,00,67,00,2e,00,65,00,78,00,65,00,00,\
  00
"Parameters"=hex(2):2d,00,73,00,20,00,61,00,31,00,38,00,34,00,31,00,33,00,30,\
  00,38,00,2d,00,33,00,35,00,34,00,31,00,2d,00,34,00,66,00,61,00,62,00,2d,00,\
  62,00,63,00,38,00,31,00,2d,00,66,00,37,00,31,00,35,00,35,00,36,00,66,00,32,\
  00,30,00,62,00,34,00,61,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\4]
"ItemName"=hex(2):00,00
"Application"=hex(2):00,00
"Parameters"=hex(2):00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\5]
"ItemName"=hex(2):00,00
"Application"=hex(2):00,00
"Parameters"=hex(2):00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Applets\SysTray\BattMeter\ContextMenu\6]
"ItemName"=hex(2):00,00
"Application"=hex(2):00,00
"Parameters"=hex(2):00,00



Вот вторых ничего не написано про яркость, а от яркости больше всего зависит время работы ноутбука от батареи.
В третьих ничего не написано про множители CPU и как их можно выставить (у AMD обычно 50, 80 и 100%).
В четвёртых у видеокарт тоже есть режимы энергосбережения, и про них тоже ничего не написано, хотя там есть что разобрать.
Даже не дано совета банально поуменьшать время работы подсветки и рассказать про её притемнение.

В общем в статье собственно о том как существенно продлить время работы ноутбука от батареи толком ничего и не сказано, просто прога для переключения режима, а стандартные настройки режимов совсем не оптимальны.
Я бы с удовольствием прочитал статью, в которой были бы описаны более экстремальные и агрессивные способы сохранения заряда, о которых вы говорите :)
Ну я всех тонкостей уже не помню, так как сейчас на ноуте у меня линукс, и здесь энергосбережением я управляю вот так (прописано в alias как cpuf, запускается через sudo), настройки специфичны для моего AMD APU.
Код
#!/bin/bash

clear
echo ""
while true
do
clear
echo "*******************************************"
echo "************APU Governor Mode**************"
echo "*******************************************"
echo "** 1. Set APU ondemand (default)         **"
echo "** 2. Set APU performance                **"
echo "** 3. Set APU conservative               **"
echo "** 4. Set APU powersave                  **"
echo "** 0. Current state                      **"
echo "*******************************************"
echo "**************Select option****************"
echo "*******************************************"
echo "** 5. Stop Services                      **"
echo "*******************************************"
echo "** l. Laptop Mode Tools                  **"
echo "*******************************************"
echo ""

read n
case $n in

1)clear
echo "Ondemand mode"
cpufreq-set -g ondemand -c0
cpufreq-set -g ondemand -c1
cpufreq-info -f -m -c0
cpufreq-info -f -m -c1
echo balanced > /sys/class/drm/card0/device/power_dpm_state
echo auto > /sys/class/drm/card0/device/power_dpm_force_performance_level
cat /sys/class/drm/card0/device/power_dpm_state
cat /sys/class/drm/card0/device/power_dpm_force_performance_level
sleep 2;;

2)clear
echo "Performance mode"
cpufreq-set -g performance -c0
cpufreq-set -g performance -c1
cpufreq-info -f -m -c0
cpufreq-info -f -m -c1
echo performance > /sys/class/drm/card0/device/power_dpm_state
echo high > /sys/class/drm/card0/device/power_dpm_force_performance_level
cat /sys/class/drm/card0/device/power_dpm_state
cat /sys/class/drm/card0/device/power_dpm_force_performance_level
sleep 2;;

3)clear
echo "Conservative mode"
cpufreq-set -g conservative -c0
cpufreq-set -g conservative -c1
cpufreq-info -f -m -c0
cpufreq-info -f -m -c1
echo battery > /sys/class/drm/card0/device/power_dpm_state
echo auto > /sys/class/drm/card0/device/power_dpm_force_performance_level
cat /sys/class/drm/card0/device/power_dpm_state
cat /sys/class/drm/card0/device/power_dpm_force_performance_level
sleep 2;;

4)clear
echo "Powersave mode (850mhz)"
cpufreq-set -g userspace -c0
cpufreq-set -g userspace -c1
cpufreq-set -f 850 MHz -c0
cpufreq-set -f 850 MHz -c1
cpufreq-info -f -m -c0
cpufreq-info -f -m -c1
# echo 0>/sys/class/thermal/cooling_device0/cur_state
# echo 0>/sys/class/thermal/cooling_device1/cur_state
echo low > /sys/class/drm/card0/device/power_dpm_force_performance_level
echo battery > /sys/class/drm/card0/device/power_dpm_state
cat /sys/class/drm/card0/device/power_dpm_state
cat /sys/class/drm/card0/device/power_dpm_force_performance_level
sleep 2;;

5)clear
echo "Stopping Tor"
service tor stop
echo "Stopping I2P"
service i2p stop
echo "Stopping BTSync"
service btsync stop
echo "Stopping MetaSploit"
service metasploit stop
echo "Disabling Proxy"
# gsettings set org.gnome.system.proxy mode 'none'
sleep 2;;

l)clear
lmt-config-gui
sleep 2;;

0)clear
echo Core 0 $(cpufreq-info -f -m -c0)
echo Core 1 $(cpufreq-info -f -m -c1)
echo DPM State $(cat /sys/class/drm/card0/device/power_dpm_state)
echo DPM $(cat /sys/class/drm/card0/device/power_dpm_force_performance_level)
sleep 5;;

*)clear
echo "Invalid option"
echo ""
read -p "Press any key to return to script";;

esac
sleep 1
done


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

Почему бы не использовать tlp, который умеет это и больше?

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

Код на .vbs
  strComputer = "."
  Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
  Set colMonitoredEvents = objWMIService.ExecNotificationQuery ("Select * from Win32_PowerManagementEvent")

  Do
    Set strLatestEvent = colMonitoredEvents.NextEvent
    Wscript.Echo "Attention - " & strLatestEvent.EventType

    Set objWMIService1 = GetObject("winmgmts:\\" & strComputer & "\root\wmi")
    Set colItems = objWMIService1.ExecQuery("Select * From BatteryStatus Where Voltage > 0")
 
    For Each objItem in colItems
      Wscript.Echo "Battery: " & objItem.InstanceName
      Wscript.Echo "On AC Power: " & objItem.PowerOnline
      Wscript.Echo "Battery is Discharging: " & objItem.Discharging
      Wscript.Echo "Battery is Charging: " & objItem.Charging
      Wscript.Echo "Remaining capacity: " & objItem.RemainingCapacity
    Next
    Wscript.Echo 
    
  Loop


Пример сохранить в текстовом файле с расширением .vbs, запускать из cmd.exe командой:
cscript power.vbs

Отслеживает изменение состояния питания и выводит в консоль текущее состояние. Такой код легко переписывается под любые нужды, после отладки запускать его в консоли cmd не нужно (чтобы не порождать лишние окна).
UFO landed and left these words here
У меня ноут делал это всё автоматически…
Sign up to leave a comment.

Articles