hdparm, changing the hard-disk spindown (sleep time)
Danny Kukawka
danny.kukawka at web.de
Tue Aug 23 13:14:47 PDT 2005
On Tuesday 23 August 2005 20:06, Richard Hughes wrote:
> This is a very rough and ready patch.
>
> To finally drive a nail in the coffin for the bodge that is PowerManager
> dbus daemon, this is a quick patch to add a:
>
> org.freedesktop.Hal.Device.SystemPowerManagement.SetSpindown (seconds)
>
> method to all hard disks. This lets us abstract the detail of hdparm
> (and its weird ID mapping) and lets any application use the spindown
> sleep method.
>
> I understand that SetLowPowerMode may do this sort of thing there, but
> it made sense to use HAL to call a HAL method, if you see what I mean.
>
> Plus it gives other programs the fine-grained spindown control.
>
> What do ppl think? Is there an easy (cross-distro) way of calling
> hdparm?
I'm not sure if it is a good idea to add this to HAL. It's not really needed
for powermanagement. Harddisks have a really intelligent powermanagment. You
lose with such solution more than you win.
Here the power consumption data for a notebook harddisk (ide/sata):
Startup (peak, max.) 5.5W NC
Seek 2.3W 2.7W
Read (avg.) 2.0W 2.3W
Write (avg.) 2.0W 2.3W
Active idle (avg.) 1.1W 1.2W
Low power idle (avg.) 0.85W 0.9W
Standby (avg.) 0.2W 0.25W
Sleep 0.1W NC
* A disk on Low Power idle need less than 1 Watt per hour for a normal battery
with 50000mWh you can let run the harddisk 50 hours. The harddisk is not the
point to save power. You maybe win on a battery fuel maybe 1-3 minutes (or
something like this). If you would like to save power it make, if any, more
sense to use the advanced powermanagement features of a disk.
* If you not read/write from/to the harddisk the disk regulate the disk down,
but never shut down the device. The reason is easy: you lost more power with
each startup than let the harddisk online somewhere between 'Active idle' and
'Low power idle' (depends on the model/manufacturer/version maybe also
standby).
* Other reason to let do this the intelligent internal powermanagement of the
disk is: the time needed to reactivate the device. You lose more performance
than you lose power between 'Active idle' and 'Low power idle'.
* If you use a journaling file system: you normally need to flush
periodically. This could run in a race between shut down device and restart
device by system to flush. This means more power consumption as if you change
nothing.
* Different of actual HDDs react on the usage of the disk and adapt this to
the own powermanagement. If you engage to this process you can reduce the
lifetime of the disc (e.g. trough unneed increase Load_Cycle_Count, can also
be a effect in races as above) and again: lose more power than you save.
* And at least: the manufacturer of harddisks for notebooks know what they do
and they optimized the devices. ;)
We had this in the past also in powersave, but we removed this because of the
points above and trouble with some decives. And with upcomming SATA drives
this should not work IMO (I think hdparm work only with IDE, or?).
> Plus it gives other programs the fine-grained spindown control.
Problem: What if different applications with different settings try to set
their own settings? Not a good concept, or?
If you need more info our specialist for powermanagement and harddisks if back
next week from holidays.
What you think?
Cheers,
Danny
More information about the hal
mailing list