1. Включение ALPM позволит сэкономить 1-2 Вт энергии, но может привести к
повреждению данных для некоторых устройств.
echo SATA_ALPM_ENABLE=true | sudo tee /etc/pm/config.d/sata_alpm
2. Изменение фона рабочего стола на более светлый цвет для ноутбука с
LCD-экраном увеличит продолжительность работы примерно на 1%.
3. Включение режима энергосбережения RC6 для видеокарт Intel i915 через
передачу параметра ядра i915.i915_enable_rc6=1 позволит сэкономить 25-40%
энергии для устройств на базе архитектуры Sandybridge, но в редких случаях
может привести к зависанию на определённых ноутбуках.
4. Включение режима сжатия фреймбуфера (Frame Buffer Compression) для драйвера
i915 через передачу параметра ядру i915.i915_enable_fbc=1 позволит сэкономить
до 0.6 Вт.
5. Установка задержки гашения обратного хода луча вертикальной развёртки (DRM
vblank off) через параметр ядра drm.vblankoffdelay=1 сократит число вызывающих
пробуждение процессора событий (wakeup events) и возможно сэкономит немного энергии.
6. Отключение всех беспроводных подсистем, если они не используются. В
частности отключение bluetooth (“blacklist bluetooth” в
/etc/modprobe.d/blacklist.conf) приведёт к экономии 1-2 Вт.
7. Отключение web-камеры (“blacklist uvcvideo” в
/etc/modprobe.d/blacklist.conf) поможет сэкономить 1-2 Вт.
8. Использование утилиты PowerTop для перевода следующих устройств в состояние
экономного потребления энергии:
* Webcam
* Audio
* DRAM
* Ethernet
* Wifi
* Bluetooth
* SATA
* MMC/SD
9. Использование ядра Linux в котором решена проблема с активацией ASPM
(Active State Power Management) для карт PCI Express. Ядро тестовой ветки
Ubuntu 12.04 уже содержит нужный патч. Для других систем рекомендуется в
качестве обходного пути передать ядру параметр
“pcie_aspm=powersave”, который по умолчанию активирует режим максимальной
экономии энергии (иначе, будет использован режим максимальной
производительности). Для некоторых моделей ноутбуков данное действие может
привести к снижению энергопотребления на 10-30%.
10. Приглушение яркости экрана до 2/3 от максимального значения сэкономит 1 Вт.
11. Отключение мерцающего курсора в gnome-terminal позволит избавиться от
лишних пробуждений процессора:
gconftool-2 –type string –set /apps/gnome-terminal/profiles/Default/cursor_blink_mode off
12. Выявление проблем с излишне частым пробуждением процессора и излишней
нагрузкой на CPU для часто используемых приложений при помощи пакета
powertop или утилит eventstat и cpustat из PPA репозитория colin-king/powermanagement.
Например для выявления наиболее активных событий за 10 секунд:
sudo eventstat 10 1
Evnt/s PID Task Init Function Callback
96.10 12659 npviewer.bin hrtimer_start_range_ns hrtimer_wakeup
58.10 0 [kern sched] Load balancing tick tick_sched_timer
49.80 2026 alsa-source hrtimer_start_range_ns hrtimer_wakeup
49.30 2024 alsa-sink hrtimer_start_range_ns hrtimer_wakeup
47.20 0 kworker/0:0 hrtimer_start_range_ns tick_sched_timer
Для мониторинга в течение 60 секунд и вывода процессов, генерирующих более 5 событий в секунду:
sudo eventstat -t 5 60 1
Evnt/s PID Task Init Function Callback
54.00 2003 compiz hrtimer_start_range_ns hrtimer_wakeup
49.35 2024 alsa-sink hrtimer_start_range_ns hrtimer_wakeup
18.92 0 [kern sched] Load balancing tick tick_sched_timer
17.57 0 kworker/0:0 hrtimer_start_range_ns tick_sched_timer
16.13 0 [kern core] usb_hcd_poll_rh_status rh_timer_func
9.98 2386 gwibber-service hrtimer_start_range_ns hrtimer_wakeup
9.88 10063 desktopcouch-se hrtimer_start_range_ns hrtimer_wakeup
9.87 2382 ubuntuone-syncd hrtimer_start_range_ns hrtimer_wakeup
9.83 10109 desktopcouch-se hrtimer_start_range_ns hrtimer_wakeup
5.23 0 [kern core] hrtimer_start tick_sched_timer
12046 Total events, 200.77 events/sec