From what I have seen there is a pretty good support for dynamic power management in the both Windows and Linux when it comes to the CPU (scaling frequency so as to reduce energy consumption). Is there similar support for managing the Hard Disk Drive and the RAM (spinning down the HDD, lowering RAM frequency or anything that might result in power consumption reduction)?
For the HDD, use hdparm
with -S
to define after how much time it should spin down. To make this work, you must disable all processes which access the disk regularly like cron
and flushd
. The latter is a bit dangerous because it flushes memory caches to disk. You can simulate it by calling sync
manually but if your computer crashes unexpectedly, then you can loose a lot of data.
So in the end, sending the disk to sleep doesn't really help unless you're not using your computer for long periods of time. But there are other methods to make it use less power:
- Let it run. Spinning the disk up needs a lot of power.
- Mount with
noatime
reduces the write accesses a lot. - Replace the disk with an SSD. Even a small SSD for the OS plus the swap partition goes a long way.
- Replace the disk with a smaller one (i.e. 3.5" -> 2.5" -> 1.8").
As for the RAM, I know nothing what you can manipulate. I guess you could switch off RAM areas which aren't in use but current OSs use free RAM as a hard disk cache, so you won't find much "free" RAM that can be switched off. So here, your best option is to installed less RAM.