Idle vs. Parked Heads vs. Spin Down

Silencing hard drives, optical drives and other storage devices

Moderators: NeilBlanchard, Ralf Hutter, sthayashi, Lawrence Lee

Post Reply
AznJason
Friend of SPCR
Posts: 75
Joined: Fri Oct 20, 2006 10:29 am

Idle vs. Parked Heads vs. Spin Down

Post by AznJason » Wed Dec 31, 2008 8:39 pm

I'm thinking about creating a RAID array for WHS using a hardware RAID controller (Intel SRCSAS18E aka LSI MegaRaid). I was wondering the following:

1.) How does say, a WD GP or Samsung EcoGreen drive go to idle? Is it automatic on the drive itself?
2.) I'm guessing parking the heads is a result of being in idle for a period of time?
3.) Spindown gets set in Windows, but HDDScan seems to allow for the drive to be spundown based on it's internal idle timer. If prior to creating my RAID array, I set a spindown, will it stay even though the RAID controller doesn't support it?

Thanks for any help provided. The system will be running 24/7, so any power savings is much appreciated. :D

nutball
*Lifetime Patron*
Posts: 1304
Joined: Thu Apr 10, 2003 7:16 am
Location: en.gb.uk

Re: Idle vs. Parked Heads vs. Spin Down

Post by nutball » Thu Jan 01, 2009 1:31 am

AznJason wrote:3.) Spindown gets set in Windows, but HDDScan seems to allow for the drive to be spundown based on it's internal idle timer. If prior to creating my RAID array, I set a spindown, will it stay even though the RAID controller doesn't support it?
Highly unlikely and in any case even if it did work I doubt it's a good idea for the drives to be doing things that the RAID controller isn't fully aware of. There are RAID cards out there that will spin down the discs in an array when they're idle (Adaptec 5xxx series for example, which last I looked also tended to win out in benchmarks over the obvious competitors).

whiic
Posts: 575
Joined: Wed Sep 06, 2006 11:48 pm
Location: Finland

Post by whiic » Thu Jan 01, 2009 2:47 am

Rather than "highly unlikely" I would use word "uncertainly". Some drives write idle spindown timer value to non-volatile memory and remember it after power cycle. It also doesn't matter where you put it as the HDD acts autonomously regarding that feature. I have installed Hitachis to internal IDE and after configuration of APM (unload 2 min, low-rpm 10 min) and idle spindown timer (>60 min) put them to USB enclosures and both APM and spindown timer have worked like a charm despite USB interface not being able to support either of these features.

Some other HDDs on the other hand (most of which don't support APM) write spindown counter to volatile memory so powering off the computer will make it forget what the timer was. I have had such problems with several HDDs. I haven't made a log of what are volatile so I only remember Maxtor MaXLine +II to be forgetful. I know some of my other HDDs forget as well but I can't be sure I remember them correctly so it's better I don't make guesses and try to name them.

AznJason
Friend of SPCR
Posts: 75
Joined: Fri Oct 20, 2006 10:29 am

Post by AznJason » Fri Jan 02, 2009 1:50 am

whiic wrote:Rather than "highly unlikely" I would use word "uncertainly". Some drives write idle spindown timer value to non-volatile memory and remember it after power cycle. It also doesn't matter where you put it as the HDD acts autonomously regarding that feature. I have installed Hitachis to internal IDE and after configuration of APM (unload 2 min, low-rpm 10 min) and idle spindown timer (>60 min) put them to USB enclosures and both APM and spindown timer have worked like a charm despite USB interface not being able to support either of these features.

Some other HDDs on the other hand (most of which don't support APM) write spindown counter to volatile memory so powering off the computer will make it forget what the timer was. I have had such problems with several HDDs. I haven't made a log of what are volatile so I only remember Maxtor MaXLine +II to be forgetful. I know some of my other HDDs forget as well but I can't be sure I remember them correctly so it's better I don't make guesses and try to name them.
Do you know the answers to 1 and 2? Is the transition to idle and parked heads a function of the drives, operating system, or both?

fwki
Patron of SPCR
Posts: 120
Joined: Mon Dec 17, 2007 7:06 am
Location: Houston, Texas U.S.A.

Post by fwki » Fri Jan 02, 2009 7:41 am

Hitachi gives an explanation of how their drives cycle through the four stages of readiness under Adaptec Series 5 and Series 2 controllers in this whitepaper:
http://www.hitachigst.com/tech/techlib. ... _final.pdf

It's not very technical but it helped me.

whiic
Posts: 575
Joined: Wed Sep 06, 2006 11:48 pm
Location: Finland

Post by whiic » Fri Jan 02, 2009 12:10 pm

"Do you know the answers to 1 and 2?"

GreenPower unloads heads in ~8 seconds. I haven't timed it but it's sounds approximately correct. Give or take a few seconds, at most. In a way it works like Hitachi with APM enabled. Though Hitachi unloads at 120 seconds in maximum power saving and is compeletely disabled by default. So while WD's unload pretty much works with the same princeple, it's aggressiveness is laptop-like.

I don't know if EcoGreen unloads heads on idle. F1 7200rpm is a CSS (contact start/stop) based drive, not LUL (load/unload) based. Thus unloading with F1 7200rpm is impossible. I would believe F1 5400rpm (i.e F1 EcoGreen) is also CSS. I don't know how it's with F2 EcoGreen if it's still CSS or if they did the (inevitable) transition to LUL.

LUL is not only necessary for extra power saving modes between operational mode and stand-by (platters fully stopped), but LUL is also necessary when areal densities are increased beyond certain point. I don't think were there yet, but since it's inevitable, some manufacturers have also transitioned desktop drives to use it (i.e Hitachi (previously IBM) and Western Digital). Laptops use if for other reasons (shock tolerance and power consumption).

Different manufacturers use different names for the same technology. WD for example uses "IntelliPark" for what Hitachi calls LUL. AFAIK, IBM/Hitachi never even trademarked it... probably because they're selling the technology to competitors, not only advertizing the technology to sell their own products like WD does.

AznJason
Friend of SPCR
Posts: 75
Joined: Fri Oct 20, 2006 10:29 am

Post by AznJason » Sat Jan 03, 2009 3:58 pm

I've tried searching online, but I haven't found an answer.

Western Digital GP drives say that in "Sleep" it consumes < 1 watt of power. How do you reach this state? Is it via a command like Windows' "Turn off hard disks" option or is it more like Hitachi's PM, where after a period of idle it will spin down on it's own?

From what I've read "parked heads" is unloading the heads and "sleep" should be stopping the spin.

whiic
Posts: 575
Joined: Wed Sep 06, 2006 11:48 pm
Location: Finland

Post by whiic » Sun Jan 04, 2009 9:57 am

"From what I've read "parked heads" is unloading the heads and "sleep" should be stopping the spin."

Yes, technically that's correct, though there two points to be noted:

- parking may also refer to CSS based drives moving the head to inner tracks where there is a roughtened surface called "landing zone". It may also be referred as parking. The actuator is typically locked with magnetic of mechanic latch to prevent unparking on vibration or shock when transported. The patterned surface of landing zone (while it might appear to cause more wear during landing) is actually necessary to prevent heads from "glueing" to the platters. Platters are so smooth that if you dismantly a HDD and put two platter to each other, you cant take them apart (except maybe sliding them sideways) because it's like a vacuum pulling them together and the smoothness prevents air from leaking to the space between the platters.

- SLEEP mode does include spinning down the platters but that command is typically not used. At least Windows power management doesn't use it, and while HDDScan has the option to immediately stop a selected disk from spinning, it doesn't use SLEEP command to invoke SLEEP state. There's one BIG reason why not: SLEEP is permanent, you put the drive to SLEEP, it will NOT wake up on I/O request. HDD needs a hard reset to wake up. Basically, you reboot the whole computer and I'm not sure even that works with all motherboards. You may need to shut down and power it up againt to get the HDD to spin back up.

- instead of SLEEP, you use STAND-BY command. Power consumption of STAND-BY is approximately same as in SLEEP (maybe around 0.1 watts more in STAND-BY than SLEEP but it's negligible). I suspect Windows power management issues STAND-BY command when the timer kept by Windows expires. (If Windows freezes, the timer freezes, as the timer is software based.)

- another (viable) HDD spindown alternative is HDD spindown timer. You set the timer to HDD's own memory and HDD itself keeps the timer ticking. When it expires, it goes to STAND-BY mode. STAND-BY is harmless because interface remains active and HDD spins up on any read or write request: no separate (soft or hard) reset command needs to be issued. Basically, OS doesn't need to be aware of HDD's STAND-BY state (regardless whether it's activated by internal timer or STAND-BY command). All it causes is a 5-25 second delay from request to HDD responding as platters are spun up. (No software or hardware should expect a HDD to be faulty if it failst to respond within a time of 30 seconds or shorter period of time. It's usually stated in OEM specs of HDDs.)

- because of this, it's safe to spin down disks with utility tools, without notifying your OS. It's also safe for HDD to enter STAND-BY without specifically being called by any software. In theory, it's safe even within RAID array as RAID controllers should give the HDDs a minimum of 30 seconds to reply before assuming them dead and dropping them. But we do know RAID controllers are bitchy and total pain in the arse so don't actually assume it'll work problem free because they'll even drop perfectly operational drives out the array. For example WD's RAID edition has time-limited error recovery enabled so that they will not wait too long trying to correct an error. What is odd though is that many non-RAID editions drop out of RAID even though they don't have bad or very slow sectors. It's a total mystery. Remind me of the joke: "There are sound scientifically proven reasons why one must sometimes sacrifice a chicken in order to get a SCSI chain to work." And I'm afraid sometimes it applies to other HDD controllers as well, especially RAID capable. It's total woodoo, so don't expect any HDD to work in RAID if they have spindown counter enabled. :p

- HDD spindown timer works like APM and uses internal timer to enter STAND-BY mode. STAND-BY command can be used to immediately enter that same STAND-BY mode. Drive is set to SLEEP mode with SLEEP command and it's also immediate and can't be timered... timering SLEEP would be a bad thing as a HDD to enter SLEEP without warning would likely cause data loss, system freeze, etc. in the same way than yanking a power cord off a HDD on the fly would do. (But yanking power cord can cause electronical damage to drive. SLEEPing HDD will only cause software damage, i.e corruption.)

inti
Posts: 118
Joined: Thu Feb 10, 2005 7:09 am
Location: here

Post by inti » Thu Jan 22, 2009 4:52 am

As there's a lot of expertise about spin-down on this thread :) I hope it's OK to ask this fairly detailed question:

My system has many HDD (let's say, eight) in a JBOD configuration, and staggered spin-up. The system is primarily a media server, used for music for the house (one drive) recording TV (another drive), and plenty of drive-to-drive video editing, and so on. There's also a separate OS drive. I also use a Ramdrive for Virtual Memory, Temporary Internet Files and the TEMP folder - I highly recommend to do this, it definitely speeds up your system and reduces noise.

My Windows is set to power down the hard drives after 45 minutes. Empirically tested, this works well, avoiding unwanted spin-down of a drive which is in occasional use, but spinning down most of the drives (for example, six out of eight) when the PC is only being used for one or two tasks (for example, browsing the Web and listening to music).

With 2 drives spinning, the system is quiet. With 8, it becomes loud and you can also hear the PSU fan spinning faster...

Unfortunately, a good percentage of applications (for example, Exact Audio Copy, MS Visual Studio 2005, and so on - maybe anything based on .NET 2.0?) cause all drives to spin up at application load time. Maybe the application is "enumerating" the drives, maybe scanning for volume labels, or something like that - anyhow I'll call this behaviour "enumerating" . (To be strictly accurate, "all drives" is actually "nearly all drives", because either Windows or the HDD itself sometimes seems to be able to cache the needed drive information without needing a spin-up. This is probably related to the feature that the volume name and root folder of a drive you have used recently are often cached, so you can later open a drive in 'My Computer' without the drive needing to spin up until you actually try to look inside a file.)

The problem? The drive spin-up causes Windows to "hang" or "freeze" until the drive is operating at full speed. If many spun-down drives are doing a staggered spin-up, Windows might hang for something like 30 seconds (6 x 5 seconds). The mouse freezes, and all applications will freeze. This is especially annoying if the system is playing music (the audio card gets stuck repeating the same section over and over and over again) or if the system is recording TV (a chunk of the TV program will be missed, and there will be glitches in the recording). But actually, even just one drive spin-up freeze is annoying in this music or TV-recording situation.

Using the 45-minute spin-down delay, I've mostly eliminated uncontrolled/unexpected drive spin-up - for example, the OS drive never spins down - but still there is the problem of spinning up all drives, I think unnecessarily, when various applications are launched.

So, the techie questions are:

(1) Does anybody know a way to change Windows behaviour of "freezing" while waiting for drive spin-up - for example a registry change which will return the drive as "inaccessible" or "powered-down" instead of waiting while it spins it up just to read the volume label or whatever it is.

(2) Is there a way to prevent .NET 2.0 applications from enumerating all drives at application load time (unlikely ... I guess)?

(3) Are there caching improvements that can be made in Windows that will make it retain the basic data for every drive, so that there is no need ever to spin up drives when just enumerating them? (I have tried increasing various cache sizes etc, but it doesn't seem to make a difference.)

(4) Is there a third party application (e.g. Supercache?) which will overcome the problem I have described? (Probably what is needed is to retain a minimum level of information for every drive cached, even if many GB of data are then read from one of the drives.)

My system is Windows XP SP3, and 2GB RAM in case that is relevant, and most of the drives are Samsung F1.

Post Reply