ViperAFK Posted July 6, 2012 Share Posted July 6, 2012 I've noticed a lot of distros really don't include many (or any) laptop power management tweaks by default. The only distro that seems to try to do this is ubuntu 12.04, which already does some of the stuff in this how to. When I recently ran powertop on my fedora 17 install and it reported relatively high battery discharge, and all the tunables were shown as "bad" I decided to use the same tweaks I had on my arch linux install, using pm-utils scripts. There are other ways to do this, such as laptop-mode-tools and jupiter, but I've had the best success with the following: Note, that some of these scripts have varying levels of success on different hardware, you may want to look at them and tweak them a little bit if need be, or remove ones that don't work for you (for example, I found the pm-utils 'harddrive' script to be too aggresive for my taste, so I increased the battery APM to 128 and the spindown time to 3 minutes, which are the default settings ubuntu 12.04 uses). You can view the following log to see if the scripts are executing properly: cat /var/log/pm-powersave.log Download the upstream pm-utils source from here: http://pm-utils.freedesktop.org/rele...s-1.4.1.tar.gz Once extracted you can find various power saving scripts in: pm-utils-1.4.1/pm/power.d. Take the scripts you wish to use, and drop them into /etc/pm/power.d and make them executable. This will enable a good amount of the powertop recommended tunables automatically when you are on battery. Note: your distro may or may not already have some of the above scripts located in /usr/lib64/pm-utils/power.d or /usr/lib/pm-utils/power.d Ubuntu does include and use some of these by default, but fedora didn't include any. After doing this I did a few additonal things that didn't come with the included scripts, to get the remaining powertop recommendations set to 'good'. I added a script called "device_pm" (Using a script I found on the arch forums: https://bbs.archlinu....php?pid=860231). to enable runtime pm for all my pci devices: #!/bin/shdevice_pm() { for dpcontrol in /sys/bus/{pci,spi,i2c}/devices/*/power/control; do [ -w "$dpcontrol" ] || continue echo $1 > "$dpcontrol" done}case "$1" in true) echo "**device power management ON" device_pm auto ;; false) echo "**device power management OFF" device_pm on ;;esacexit 0[/Code] I added a script called usb_pm (taken from the arch wiki: https://wiki.archlin...-utils_Settings) to enable usb autosuspend and disable nmi_watchdog: [Code]#!/bin/shcase "$1" in true) # USB powersaving for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 1 > $i done for i in /sys/bus/usb/devices/*/power/control; do echo auto > $i done sysctl kernel.nmi_watchdog=0 ;; false) for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 2 > $i done for i in /sys/bus/usb/devices/*/power/control; do echo on > $i done sysctl kernel.nmi_watchdog=1 ;;esacexit 0[/Code] I added a simpler script for intel audio power saving (taken from a script on the crunchbang forums: http://crunchbanglin...ipt-for-debian/) that worked better on my machine than the pm-utils one: [Code]#!/bin/sh# A script to enable intel audio power saving on fedoracase "$1" in true) # Enable some power saving settings while on battery # Intel power saving echo Y > /sys/module/snd_hda_intel/parameters/power_save_controller echo 1 > /sys/module/snd_hda_intel/parameters/power_save ;; false) #Return settings to default on AC power echo N > /sys/module/snd_hda_intel/parameters/power_save_controller echo 0 > /sys/module/snd_hda_intel/parameters/power_save ;;esacexit 0[/Code] and lastly, increase the vm_writeback value on battery (taken from arch wiki: https://wiki.archlin...-utils_Settings) [Code]#!/bin/shcase "$1" in true) # Less VM disk activity. Suggested by powertop echo 1500 > /proc/sys/vm/dirty_writeback_centisecs ;; false) #Return settings to default on AC power echo 500 > /proc/sys/vm/dirty_writeback_centisecs ;;esacexit 0[/Code] And here are the results http://i.imgur.com/ZLXQw.png http://i.imgur.com/GzFPI.jpg Link to comment https://www.neowin.net/forum/topic/1089443-how-to-power-saving-with-pm-utils/ Share on other sites More sharing options...
Recommended Posts