Main Page‎ > ‎

Laptop

Laptop

Contents

 [hide]

Laptop tricks that matter for extending battery life

Relevant references

What I use:

  • go for low power consumption on my ibm t23 (battery operation)
modprobe speedstep-ich speedstep-lib msr
echo -n "0%0%100%powersave" > /proc/cpufreq
echo "1" > /proc/sys/vm/laptop_mode
echo "30 500 0 0 60000 60000 60 20 0" > /proc/sys/vm/bdflush
hdparm -S1 /dev/hda
  • switch back to full power mode (AC operation)
echo -n "0%0%100%performance" > /proc/cpufreq
echo "0" > /proc/sys/vm/laptop_mode
echo "30 500 0 0 500 3000 60 20 0" > /proc/sys/vm/bdflush

Investigate which process is making use of the disk

/etc/init.d/sysklogd stop
echo 1 > /proc/sys/vm/laptop_mode
echo 1 > /proc/sys/vm/block_dump
dmesg
dmesg

Interfacing with apm

  • add in /etc/apm/event.d the following scripts:
gunnm:/etc/apm/event.d# cat speedstep
#!/bin/sh

## Enable SpeedStep powersave modus when on battery
case "$1" in
    change)
        case "$2" in
            power)
                if (on_ac_power > /dev/null); then
                    echo -n "0%0%100%performance" > /proc/cpufreq
                else
                    echo -n "0%0%100%powersave" > /proc/cpufreq
                fi
                ;;
            *)
                ;;
        esac
        ;;
    *)
        ;;
esac
gunnm:/etc/apm/event.d# cat laptopmode
#!/bin/sh

## Enable LaptopMode powersave modus when on battery
case "$1" in
    change)
        case "$2" in
            power)
                if (on_ac_power > /dev/null); then
                    echo "0" > /proc/sys/vm/laptop_mode
                    echo "30 500 0 0 500 3000 60 20 0" > /proc/sys/vm/bdflush
                else
                    echo "1" > /proc/sys/vm/laptop_mode
                    echo "30 500 0 0 60000 60000 60 20 0" > /proc/sys/vm/bdflush
                fi
                ;;
            *)
                ;;
        esac
        ;;
    *)
        ;;
esac
Comments