Not sure how helpful this will be for anyone, but I just learned way more than I wanted to know about how f#$%ed up hard drives can be. I just upgraded my 15" MBP with a brand new Western Digital 500gig Scorpio Blue drive and installed Snow Leopard. Previously my Leopard install had 9x% filled my previous 320gig drive and I'm sure it was fragmented to pieces. It was slow.
Now it's wonderful and fast... except sometimes it would randomly "lag".
- Beach ball for half a second while using Propane with no load
- Occasional strange lag after hitting enter or doing random stuff like scrolling a window in Safari (again with the system otherwise bored).
- Wesnoth would very briefly freeze randomly during gameplay.
- Right clicking an icon in the dock would take longer than it should.
Maybe I'm ultra sensitive to my responsiveness, but it was very frustrating. It "felt" a lot like the hard drive was spinning down and I was waiting for it to spin back up. Writing a quick Ruby script to keep the hard drive busy writing tiny bits of data seemed to help, but that was no solution.
Finally I took the bottom part of my case off to listen to the drive... and it was parking the heads every 5-10 seconds. It would get quiet, spin up, get quiet, spin up, turn off (sounded like it), spin up again... craziness.
I'll save you the rest of my research and just share what I've learned:
- You can measure load/unload (head parking?) counts via your S.M.A.R.T. drive's stats.
- A quick way to do this on OS X is SMART Utility.
- General consensus across the net seems to be that several hundred thousand load counts are bad. PDF specs for my new drive list 600,000 load/unload cycles.
- If you see a reason to tune this you can use hdapm (and set it to load on boot).
- Yes, I played with OS X's built in sleep settings. No, they had no effect.
Some people blame Mac OS X's built in power management, that it doesn't put all drives in the "right" APM mode... and claim that the same drive on Windows exhibits different behavior. I can't confirm or deny this, but if so it would be really annoying that OS X isn't doing the "right" thing here.
My 85 hour "New" Western Digital Drive
That's loading/unloading 162 times per hour! Or less than half a year to reach the drives rated spec of 600,000 load/unload cycles.
160gb Seagate Drive in my 2 year old 17" MBP
Loading/unloading 85 times per hour. One million load/unload cycles and counting. Funny thing is I've never noticed any performance problems on this system. Perhaps the half reduction makes a big difference in actual everyday use?
Summary
I'm just informing here. I'm not saying telling you to rush to check your drives (but if you do, share your findings!) or get all in a frenzy. I'm not saying that a load count of 1,000,000 is for sure beyond your drives capacity.
I found enough lunatics online raving about S.M.A.R.T. stats without ANY comprehension of them to join that crowd. I don't imagine that just because I already knew what SMART was and spent 30 minutes reading a few web pages that I'm now a SMART expert. However...
I had a performance problem with my new drive. I solved it by altering the power management settings with hdapm. I'm now much happier. :-)
If anyone knows more about this subject that I do and wants to share, it'd be greatly appreciated!
Thanks for posting this, got me to check on my Seagate Momentus 7200 rpm 500gb HD. Looks like I'm in pre-fail stage on a bunch of similar stats after 10 months. Further digging shows that this drive suffers from similar problems, though it doesn't appear to just be tied to Max OS X. So I'll be looking for a replacement (I can't afford not to) and be extra vigilant with my backups.
Posted by: Caleb | December 15, 2009 at 10:56 AM
hey man, I love pastie so i thought i'd throw my 2 cents in ;)
if you have macports you can install smartmontools from ports, it'll do everything the smartd utility does. I couldn't get smartd to run reliably, but smartctl got all the same output as the smart utility. Anyway just recommending opensource over questionable shareware (which i assume uses smartmon as a basis) ;)
Posted by: nedos | January 21, 2010 at 03:37 PM
"Pre-fail" is the type of SMART attribute. Seeing "pre-fail" in the column does NOT mean the drive is failing. There are two types, pre-fail (denoting a value outside threshold would indicate a failing disk) and old-age (denoting a value outside threshold would indicate a very old disk). I've hit old-age many times on servers, but I've only hit pre-fail on one disk. Though SMART is a good utility to have, it won't detect all failures.
Also, I personally use SMARTReporter ( at http://www.corecode.at/smartreporter/index.html ) on my Mac. It works great, it's free under the MIT license, and it is unobtrusive.
Hope this helps.
Posted by: Pongo | February 15, 2010 at 04:03 PM