The SSD Relapse: Understanding and Choosing the Best SSD
by Anand Lal Shimpi on August 30, 2009 12:00 AM EST- Posted in
- Storage
A Wear Leveling Refresher: How Long Will My SSD Last?
As if everything I’ve talked about thus far wasn’t enough to deal with, there’s one more major issue that directly impacts the performance of these drives: wear leveling.
Each MLC NAND cell can be erased ~10,000 times before it stops reliably holding charge. You can switch to SLC flash and up that figure to 100,000, but your cost just went up 2x. For these drives to succeed in the consumer space and do it quickly, it must be using MLC flash.
SLC (left) vs. MLC (right) flash
Ten thousand erase/write cycles isn’t much, yet SSD makers are guaranteeing their drives for anywhere from 1 - 10 years. On top of that, SSD makers across the board are calling their drives more reliable than conventional hard drives.
The only way any of this is possible is by some clever algorithms and banking on the fact that desktop users don’t do a whole lot of writing to their drives.
Think about your primary hard drive. How often do you fill it to capacity, erase and start over again? Intel estimates that even if you wrote 20GB of data to your drive per day, its X25-M would be able to last you at least 5 years. Realistically, that’s a value far higher than you’ll use consistently.
My personal desktop saw about 100GB worth of writes (whether from the OS or elsewhere) to my SSD and my data drive over the past 14 days. That’s a bit over 7GB per day of writes. Let’s do some basic math:
My SSD | |
NAND Flash Capacity | 256 GB |
Formatted Capacity in the OS | 238.15 GB |
Available Space After OS and Apps | 185.55 GB |
Spare Area | 17.85 GB |
If I never install another application and just go about my business, my drive has 203.4GB of space to spread out those 7GB of writes per day. That means in roughly 29 days my SSD, if it wear levels perfectly, I will have written to every single available flash block on my drive. Tack on another 7 days if the drive is smart enough to move my static data around to wear level even more properly. So we’re at approximately 36 days before I exhaust one out of my ~10,000 write cycles. Multiply that out and it would take 360,000 days of using my machine the way I have been for the past two weeks for all of my NAND to wear out; once again, assuming perfect wear leveling. That’s 986 years. Your NAND flash cells will actually lose their charge well before that time comes, in about 10 years.
This assumes a perfectly wear leveled drive, but as you can already guess - that’s not exactly possible.
Write amplification ensures that while my OS may be writing 7GB per day to my drive, the drive itself is writing more than 7GB to its flash. Remember, writing to a full block will require a read-modify-write. Worst case scenario, I go to write 4KB and my SSD controller has to read 512KB, modify 4KB, write 512KB and erase a whole block. While I should’ve only taken up one write cycle for 2048 MLC NAND flash cells, I will have instead knocked off a single write cycle for 262,144 cells.
You can optimize strictly for wear leveling, but that comes at the expense of performance.
295 Comments
View All Comments
jtleon - Tuesday, September 8, 2009 - link
Yes I fell asleep atleast 3 times reading this article (it IS Monday afterall)Yes, Indilinx clearly rocks the SSD world - Now I know thanks to Anand!
Stories like this set the standard for all review sites - I don't come away with the feeling I was just sold a bill of goods by some schiester in Intel's pocket, or otherwise.
Great Job Anand! Keep them coming!
SSDdaydreamer - Tuesday, September 8, 2009 - link
I too am wondering whether TRIM will be available on the Intel Drives for Windows XP or Vista. I seriously doubt it, as the OCZ Wiper Tool appears to only be available for Indilinx controllers. Perhaps Intel will introduce their own wiper utility. I am leaning towards the OCZ Vertex or Patriot Torqx drives, as I am quite content with Windows XP and Windows Vista.I have an itchy trigger finger on these SSDs, but I want to hold back for the following unknowns.
1. I would like to use the NTFS file system for my drive, but I am unsure of the proper/ideal block size.
2. I would merely like to image my existing Windows Installation, but I am worried that performance or stability problems will arise from the NTFS file system. A fresh install could be in order, but it is preferred to image.
3. Is there a way to change the size of the spare area? Maybe I have the wrong idea (perhaps only format part of the drive, unformatted space goes appends to the spare area?) I am willing to sacrifice some of the usable partition space for an increased spare area for improved performance.
4. Are there complications with multiple partitions? If there are multiple partitions on the drive (for multi-boot) do they all share the same spare area? Is it possible to allow their own respective spare areas?
Is there anybody out there that could enlighten me? I'm sure others would do well to have the answers as well. If I make any discoveries, I will be sure to post them.
Thanks in advance.
bradhs - Monday, September 7, 2009 - link
IS there a "Wiper" app for Intel X-25m G2 drives? For people who don't have Windows 7 (TRIM) and want to keep the Intel X-25m G2 running smooth.smjohns - Tuesday, September 8, 2009 - link
No there is no wiper tool for Intel drives at the mo. In addition to this the current firmware on the Intel drives do not have TRIM enabled. I guess this will be released soon after Windows7 is released. I think I have read somewhere that Intel are working on a TRIM version of it's Matrix Storage Manager software that will provide this functionality to the other operating systems.Burny - Monday, September 7, 2009 - link
As many before me: great article! I learned a lot about SSD's. Even up to the point i'm ready to buy one.I still have 2 questions tough:
2. Will TRIM be available on the G2 Intel drives for sure? Some sources doubt this: http://www.microsoft.com/communities/newsgroups/en...">http://www.microsoft.com/communities/ne...t=&l...
3. As I understand, TRIM will work on a firmware level. That implies that TRIM will also function under Windows XP or any OS for that matter? Then why the need to build another TRIM into Windows 7? Or does a TRIM firmware enabled SSD simply allows the OS to use TRIM?
Thanks!
smegforbrain - Monday, September 7, 2009 - link
While I consider myself handy with computers, I'm not the best technical mind when it comes to the details. You do an excellent job of presenting everything in a manner that it can be understood with little difficulty. I look forward to future articles about SSDs.I do have a question I'm hoping somebody can answer. I'm as interested in the long-term storage outlook of SSD drives as I am every day use. I've seen it said that an SSD drive should hold its charge for 10 years if not used, and it was discussed a bit earlier in this thread.
Yet, none of my current mechanical hard drives are more than 3 years old; none of my burned DVDs/CDs are older than 5 years. It seems far more likely that I would replace an SSD for one with a greater storage capacity after 5 years tops than to expect one to be in use, even as archival storage, for as long as 10 years.
So, is the 10 year 'lifespan' even going to be an issue with archival storage for most people?
Will this worry over the life span of an SSD become even less of an issue as the technology matures over the next couple of years?
Starcub - Tuesday, September 8, 2009 - link
"So, is the 10 year 'lifespan' even going to be an issue with archival storage for most people?"No, but who takes wads of money out of their wallet to store it on their shelf?
smegforbrain - Tuesday, September 8, 2009 - link
"No, but who takes wads of money out of their wallet to store it on their shelf?"That is simply assuming that they will remain as expensive as they are now. They won't.
BlackSphinx - Sunday, September 6, 2009 - link
Hello! I'm taking the time to comment on this article, because I am very thankful for all of these awesome write-ups on SSD.I'm in the process of building an heavily overclocked i7 rig for gaming and video edition, and I was going to jam 2 Velociraptors in Raid0 in there. Why? I had only heard bad things about SSDs in the past.
Reading your aticles, who are, while in depth, very clear and easy to understand, I understand much better what happened in early SSDs, what's so good about recent Indilinx and Intel SSD, and, truly, why I should forgo mechanical drives and instead go the SSD route (which, frankly, isn't more costly than a Raid0 raptor setup). In short, these articles are a great service to the end users just like myself, and if they were intended as such, you have passed with flying colors. Congratulations and thanks.
Transisto - Sunday, September 6, 2009 - link
Could someone reset my brain as to why there is no way to get a (very noticeable) improvement from USB thumb-drives. I mean these thing also get 0.1 ms latency.It's a bit extreme but for the same price I could get 9 cheap 8gb SLC usb drive for around 20$ each and put them in three separate PCI-USB add-on card (5$)
They would saturate the USB controler with 3 drive in it so I Could get around 140mb/s read and 60mb/s write.
Say you manage to merge that into a raid or ... ? Is eboost or Readyboost any good at scaling up ?