=== Simple user tips for improving power usage === * Enforce turning of machines that are not used (e.g. company policy) * Turn of unused hardware already in BIOS. * Disable power hungry features. * Enable CPU scaling if supported for ondemand CPU governor. DONT use powersave governor, typically uses more power than ondemand (race to idle). * Put network card to 100 mbit/10 mbit: ** 10 mbit: ethtool -s eth0 advertise 0x002 ** 100 mbit: ethtool -s eth0 advertise 0x008 ** Doesn't work for every card * Put harddisk to spindown fast and full power saving: ** hdparm -S240 /dev/sda (20m idle to spindown) ** hdparm -B1 /dev/sda (Max powersave mode) * Make sure writes to hd don't wake it up too quickly: ** Set flusing to once every hour ** echo "360000" > /proc/sys/vm/dirty_writeback_centisecs ** Enable laptop mode ** echo "1" > /proc/sys/vm/laptop_mode * Screensaver needs to dpms off the screen, not just make colors black. To turn of monitor after 120s when X is running: ** xset dpms 0 0 120 === Simple programmer tips for improving power usage === * Wake up only when necessary * No poll() calls * If you wake up, do everything at once (race to idle) * Use large buffers to avoid frequent disk access. Write one large block at a time * Don't use [f]sync() if not necessary * Group timers accross applications if possible (even systems)