Это старая версия документа.
Содержание
- попозже доработаю
— Malamut 2011/04/06 23:25
laptop_mode
Если у вас стоит убунту на ноутбуке, у вас уже должен быть установлен пакет laptop_mode
, оптимизирующий работу компьютера в зависимости от источника питания. Значение 0, посылаемое в /proc/sys/vm/laptop_mode, отключает режим энергосбережения, 5 устанавливает самый агрессивный.
Подробнее о том, как именно laptop_mode сберегает энергию, можно прочесть хотя бы в официальном FAQ.
echo 0 > /proc/sys/vm/laptop_mode #выключает laptop_mode echo 5 > /proc/sys/vm/laptop_mode #активирует laptop_mode
Энергосбережение SATA
Можно включать режим энергосбережение для SATA-устройств:
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy echo min_power > /sys/class/scsi_host/host1/link_power_management_policy echo min_power > /sys/class/scsi_host/host2/link_power_management_policy echo min_power > /sys/class/scsi_host/host3/link_power_management_policy echo min_power > /sys/class/scsi_host/host4/link_power_management_policy echo min_power > /sys/class/scsi_host/host5/link_power_management_policy
У вас в /sys/class/scsi_host/ может быть другое количество устройств, учтите это. Для включения максимального быстродействия нужно выполнить выполнить команды с max_performance вместо min_power.
Энергосбережение процессора
По умолчанию в Ubuntu есть пять профилей работы процессора:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors conservative ondemand userspace powersave performance
- conservative
- Медленно повышает частоту процессора в зависимости от нагрузки на систему и резко сбрасывает частоту к минимальной при простое.
- ondemand
- Быстро повышает частоту процессора при возрастании нагрузки и медленно сбрасывает частоту к минимуму при простое.
- userspace
- Позволяет указывать частоту вручную.
- powersave
- Соответствует минимальной допустимой частоте CPU.
- performance
- Очевидно, соответствуют максимальной частоте CPU.
В итоге для управления потреблением энергии процессором:
#для производительности; выполнять сие для каждого ядра echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
#для энергосбережения echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor echo powersave > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
Многие независимые пользователи крайне не советуют использовать режим performance, поэтому даже для работы от сети, когда экономить на ваттах нет смысла, стоит использовать режим ondemand.
Кроме этого, параметр 'sched_mc_power_savings' из /sys/devices/system/cpu/ позволяет использовать энергосберегающий режим работы процессора в случае, если у того более одного ядра, благодаря особому распределению нагрузки между ядрами:
echo 1 > /sys/devices/system/cpu/sched_mc_power_savings #включаем энергосбережение echo 0 > /sys/devices/system/cpu/sched_mc_power_savings #выкл
Энергосбережение аудиокарты
Встроенные аудио-чипы от Intel (которые принадлежат к т. н. High Definition Audio — HDA) также имеют возможность экономии ватт, если звуковой чип не используется:
echo 0 > /sys/module/snd_hda_intel/parameters/power_save #выключаем энергосбережение echo 10 > /sys/module/snd_hda_intel/parameters/power_save #вкл
Запрет опрашивания CD привода
Для того, что выиграть еще чуть-чуть времени работы батареи, можно запретить системе время от времени «опрашивать» cd/dvd-привод на предмет наличия там диска:
hal-disable-polling --device /dev/cdrom #запрещаем hal-disable-polling --enable-polling --device /dev/cdrom #делаем как было
Отключение веб-камеры
Можно полностью выключить веб-камеру вместе с драйвером:
modprobe -r uvcvideo #выключаем modprobe uvcvideo #включаем обратно
Естественно, пропустите этот шаг, если вам придется использовать скайп или еще для чего-то понадобится камера.
Эффективная работа памяти
8) Dirty ratio — максимальный размер памяти (в процентах), для хранения грязных данных прежде чем процесс, их сгенерировавший, будет принужден записать их. Чем выше значение, очевидно, тем реже производится запись и тем меньше активность жесткого диска и системы.
echo 10 > /proc/sys/vm/dirty_ratio echo 90 > /proc/sys/vm/dirty_ratioe #при работе от батареи
9) Dirty background ratio — минимальное число памяти (в процентах), где позволено хранить гразные данные вместо записи на диск. Этот параметр должен быть намного меньше чем dirty_ratio что бы позволить записывать куски грязных данных за один проход.
echo 5 > /proc/sys/vm/dirty_background_ratio #в нормальном режиме echo 1 > /proc/sys/vm/dirty_background_ratio #в режиме энергосбережения
10) Dirty Writeback sentisecs — как часто ядро должно проверять есть ли «грязные» (измененные) данные для записи на диск (в сантисекундах). Чем выше значение, очевидно, тем реже используется диск для записи грязных данных.
echo 6000 > /proc/sys/vm/dirty_writeback_centisecs echo 60000 > /proc/sys/vm/dirty_writeback_centisecs #для энергосбережения
Энергосбережение PCI Express
Включение режима энергосбережения PCI Express также позволяет экономить немного энергии батареи:
echo powersave > /sys/module/pcie_aspm/parameters/policy # Включаем энергосбережение echo default > /sys/module/pcie_aspm/parameters/policy # Выключаем