Taking a Hard Look At SSD Write Endurance
New submitter jyujin writes "Ever wonder how long your SSD will last? It's funny how bad people are at estimating just how long '100,000 writes' are going to take when spread over a device that spans several thousand of those blocks over several gigabytes of memory. It obviously gets far worse with newer flash memory that is able to withstand a whopping million writes per cell. So yeah, let's crunch some numbers and fix that misconception. Spoiler: even at the maximum SATA 3.0 link speeds, you'd still find yourself waiting several months or even years for that SSD to start dying on you."
100000 writes? 1M writes?
What the fuck is this submitter smoking?
Newer NAND flash can sustain maybe 3000 writes per cell, and if it's TLC NAND, maybe 500 to 1000 writes.
I've done the math and always come out with years of expected use.
Each time I've tried an SSD it's failed after a year.
Now I use spinning platters. Cheaper, cooler, seem to last for ever. I miss the speed, but I need my disks to last longer than a year. I've got 10 year old 40GB disks still running fine.
100,000 is only for SLC NAND. MLC, what is currently in most SSDs, is only 3,000, and TLC (found in usb drives, samsung 840, and probably more SSDs soon because it's cheaper) is only 1,000.
Is 1,000 fine for most people, yes.. but you should be aware of it. I have a fileserver that writes 200gb per day.. which would kill a Samsung 840 in about 6-7 months.
http://www.anandtech.com/show/6459/samsung-ssd-840-testing-the-endurance-of-tlc-nand
Some phones use an internal flash chip partition as swap, I always wonder about the lifetime of these devices.
But if your SSD is nearly full with data that you never change, wouldn't all the writing happen in the small area that is left? This would significantly reduce lifetime.
Our company experienced what we believe was its first age-related failure in October of 2012, an office PC with an Intel SSD drive in the value oriented line of 2008 (which was still high at the time). Basically the drive behaved as a mechanical drive would behave with an occasional bad sector and we were able to successfully image the data to a new one. Out of 200 Intel drives, that's pretty good. (We did have one failure in 2010 but that was an outright dead drive and we were able to RMA it). Not sure if this contributes anything to the conversation but I figured I'd throw this out there.
The Intel X25's in my PC, from 2009, are still humming along nicely and my last benchmark produced the same results in 2012 as they did in 2010. But I've gone so far as to set environment variables for user temp files to a mechanical drive, internet temp files to a RAM drive and system temp files to a RAM drive, offsetting the wear leveling.
Which technology is Amazon using for their AWS instances? Their instance description page (http://aws.amazon.com/ec2/instance-types/) doesn't say one way or the other.
"It obviously gets far worse" is referring to "how bad people are at estimating", not the lifespan of the Flash Memory.
+1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
I have never had a laptop hard drive last more than two years, and only had one last more than eighteen months. Maybe your spinning-metal-one-micron-away-from-the-drive-head drives work well in a stationary, temperature-controlled environment, I guess.
I know people like you. Their laptops never last, their screens are always splattered and often cracked, their iPods and ear buds are always breaking, their power cords are always twisted and frayed.
But my stuff lasts for years. My present laptop, a Dell Precision, is dated 2007. It's been all over the world, in filthy closets, big server rooms, up radio towers, on boats... I'd like to get a new one. But, I can't justify the replacement because my present laptop is in MINT condition save for the battery. Mint.
Some people take care of their stuff, many people don't.
meaningful life specs are tough to come by for flash. Yes, as noted above, SLC NAND has a rated life of 100k erases/page on the datasheet, but that's really a guaranteed spec under all rated conditions, so in reality, it lasts quite a bit longer. If you were to write the same page once a second, you'd use it up in a bit more than a day.
However, in real life, the "failure" criteria is when a page written with a test pattern doesn't read back as "erased" in a single readback. Simple enough, except that flash has transient read errors: that is, you can read a page, get an error, read the exact same page again and not get the error. Eventually, it does return the same thing every time, but that's longer than the "first error".
There's also a very strong non-linear temperature dependence on life. Both in terms of cycles and just in terms of remembering the contents. Get the package above 85C and it tends to lose its contents (I realize that the typical SSD won't be hot enough that the package gets to 85C, although, consider the SSD in a ToughBook in Iraq at 45C air temp..)
In actual life, with actual flash devices on a breadboard in the lab at "room temperature", I've cycled SLC NAND for well over a million cycles (hit it 10-20 times a second for days) without failure. This sort of behavior makes it difficult to design meaningful wear leveling (for all I know, different pages age differently) and life specs, without going to a conservative 100k/page uniform standard, which, in practice, grossly understates the actual life.
What you really need to do is buy a couple drives and beat the heck out of them with *realistic* usage patterns.
Almost certainly MLC. SLC is really only found in industrial SSDs these days. Enterprise and consumer SSDs are all MLC, with the exception of Samsung 840, the first SSD to use TLC.
Any reason you ignore wear leveling that all modern SSDs do? The drive controller will move the superblock, if that is the most written block, around. It will remap it so the OS is none the wiser.
Does anyone know whether the failure count for cells picks up along a nice smooth curve or is like running into a cliff? Intel seem to be suggesting in their spec sheets that the 20% over-provisioning on some of their SSDs (I'm assuming for bad-block remapping when failure is detected) can increase the expected write volume of a drive by substantial amounts:
http://www.intel.co.uk/content/www/us/en/solid-state-drives/solid-state-drives-710-series.html
This seems to go against the anecdotal evidence of sudden total SSD failures being attributed to cell wear - something else must be failing in those, most likely the normal expected allotment of mis-manufactured units.
Story should have been entitled "Taking a Solid Look At SSD Write Endurance".
Badabing! I'll be here all week.
Better known as 318230.
This chart is almost 2 years old now, but it is a fun read and has some good testing information:
http://www.xtremesystems.org/forums/showthread.php?271063-SSD-Write-Endurance-25nm-Vs-34nm
I have read that some of the newer SSD have only 500-1000 P/E cycles (eg. Kingston V300, Samsung 840), but I don't have proof. It is well documented that most of the current MLC drives have 3000 to 5000 P/E cycles while may of the SLC units are 100000 (eg. Intel X25-E, SuperSSpeed SLC S301).
Here is another good article about TLC SSD:
http://www.anandtech.com/show/6459/samsung-ssd-840-testing-the-endurance-of-tlc-nand
You have to buy and use the correct type of SSD for your application. A new TLC SSD should not be used in any write intensive application (eg. ZFS ZIL) but it may be great for that new fast laptop that can use the speed and does not do a lot of writes to disk. For most standard uses a good SSD will outlast the laptop/desktop where it is installed. The key for good SSD use is detection of pre-failure (SMART is a good start). The SSD is now a consumable part, just like the battery or brakes on a car. We all know drives fail, but standard hard drives don't have the same fixed life expectancy as an SSD.
Don't forget about Write Amplification. It can help kill a drive faster than total bytes written:
http://en.wikipedia.org/wiki/Write_amplification
Which is why most SSD drives implement some kind of wear leveling. They will move the often written sectors around the physical storage space in an effort to keep the wear even.
Rotating media drives do similar things and can physically move "bad" sectors too, but this usually means you loose data. Many drives actually come from the factory with remapped sectors. You don't notice it because these sectors are already remapped on the drive onto the extra space the manufacturers build into the drive, but don't let you see.
Reminds me of when I interviewed with Maxtor, years ago. They where telling me that the only difference between their current top of the line storage (which was like 250G at the time) and their 40 Gig OEM drive was the controller firmware configuration and the stickers. Both drives came off the same assembly line and only the final drive power up configuration and test step was different, and then only in the values configured in the controller and what stickers got put on the drive. If you had the correct software, you could easily convert the OEM drive to the bigger capacity, by writing the correct contents to the right physical location on the drive. The reason they did this was it was cheaper than having to stop and retool the production line every time an OEM wanted 10,000 cheap drives.
I'm sure drive builders still do that sort of thing today. Set up a 3Tb drive line, then just down size the drives which are to be sold as 1Tb drives.
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
SSD here has been rejected on multiple and continuous failure rates. Now it only gets given to end users who provide a 'light' write environment - and thats the only place where consumer level 25 and sub level nm write cycle gear can be used sanely (ie, without having a plan for swap out/replacement and higher costs).
I'm expecting a fairly severe level of failure on new equipment shipping today that uses SSD as cache.
I frankly love the speed. But the claims about how long an 'average' user would take to wear out these disks has failed with abysmal rate failures where I work. Admittedly, our users are mid to heavy use cases, but the failure rates have been high, and the life time shorter than anyone would contemplate.
Either the cost of the drives has to fall (which to be fair - it has been), or the reliability question and write limits needs to change substantially.
I no longer consider SSD for front line heavy use. And I'd need serious work to be convinced on contemplating it again with lower nm flash. And SLC level gear is simply beyond the cost level we can attain.
We`re all equal
It stores the remap info in reserved blocks. Yes they could wear out, but since it is so little it is unlikely. Most of these drives have a lot of reserved blocks.
Try understanding how these wear leveling systems actually work.
I'm on the heavier end of the normal computer user and I still have a Vertex 1 drive still alive and kicking.
OK, I don't really post all that much, but this post seems like it needs another reply. I have purchased SEVERAL SSD hard drives for the bunch of machines I have. The performance on them is awesome (which is why I still use them), but early on (and still a problem) I learned that their lifespan is crap. I haven't gotten more than 10 months out of any SSD, and I'm not defragging them or buying knock off brands that may or may not have fallen off the back of some production line. I have bought ones from Crucial, from WD, from IBM, and most recently (and the one that died last Tuesday) from Mushkin. It is to the point where I don't install anything except the OS on them, and still use a 7200RP platter drive and my Google Drive for all my data. That said...the performance alone is worth this annoyance, I figure it's not the end of the world to rebuild my pc once a year or so, and to do so with a freshly RMA'd hard drive. That said...I would ALWAYS suggest that people buy the "extended" warranties with these drives and keep important data elsewhere. The performance is great, but they don't last long at all.
There are plenty of enterprise SSD's that use SLC, both FusionIO and STEC offer SLC options and since STEC has been replaced by Samsung in many applications I assume they do as well. I know HP also offers them as an option for their Proliant servers.
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
Dude, re-read my post. The laptop gets used almost daily for work in harsh environments. It doesn't get used for Facespace or other crap. What do you do, with a laptop, that a dual core 2.5GHz processor can't do? I'd like to have a newer faster machine. But, like I said in the beginning of this thread, I can't justify replacing a perfectly adequate laptop that's in mint condition.
Also, due to supporting lots of users and lots of machines, I have the opportunity to see the effects of different use cases on hard drives and keyboards etc. When I hear that you wear the letters off the keyboard every 12 months, I immediately think of my users. It seems that the PAs and transcriptionists that use hand lotion and antibacterials all the time wear out their keys in no time. But, the ones that don't have the creams and lotions on their desks have perfectly fine keyboards for a couple of years or more. Yet they're using the keyboards fairly equally.
So, before you go off like a condescending twat, re-read the post and try to apply some understanding before jumping to incorrect conclusions. kthnxbai
Magnetic tape is more reliable and slower.
Lots of computers over the years booted from magnetic tape.
> you'd still find yourself waiting several months or even years for that SSD to start dying on you
How comforting!
Those who would give up essential liberty to purchase a little temporary safety, deserve neither liberty nor safety.
I have never had a laptop hard drive last more than two years, and only had one last more than eighteen months.
Then I would have to wonder what the heck you are doing to the hard drives. I'm not sure I've ever had one last less than that long in a laptop. I've had laptop hard drives last for 7 years and were still going strong when I stopped using the machine. In fact I usually have some other component die long before the hard drive does. I have several hard drives that work just fine from laptops with burned out system boards, defective keyboards, borked video and other problems.
Some people are quite hard on their equipment, perhaps you are one of these? I've often been astonished how carelessly some people treat their equipment and then expect it to work.
There are plenty of enterprise SSD's that use SLC, both FusionIO and STEC offer SLC options
Yeah but who is using them?
These arent used for massive server farms because regular drive failures are inevitable regardless of what you use. SLC flash mainly sees industrial and embedded use where small amounts of space actually gets used. If you have enormous amounts of storage then it would be very foolish to use expensive SLC's.
"His name was James Damore."
Apparently our definitions of plenty are different. FusionIO has ONE product w/ SLC. STEC has a few, but they are marked as industrial SSDs, just as I said in my original post.. and they are priced like industrial SSDs too.. about $1140 for 100gb. Industrial SSDs are typically $5-10 per GB... so that's right in line.
When you dont use a computer. That happens. And the fact that you are happy with a 2007 dell means you really dont use your computer.
Curious theory. The fact that I run a multi-million dollar company heavily using a half dozen computers between 6-9 years old must really mess with your world view. We run ERP , product test, shipping, time card management, several databases, some very large spreadsheets, CAD and quite a bit more but according to you we must not actually be using the computers for anything. Would a faster computer be nice? Sure but the marginal improvement would be well into diminishing returns.
I wear the letters off of a keyboard in 12 months.
So stop buying crappy keyboards. I have keyboards have have been used for over 20 years without a fleck of paint missing.
Some of us actually use their computers as tools to make money, others look at them as toys for fun.
Some of us actually try to get a decent ROI on our machines and realize that lots of actual work doesn't require the latest and greatest. I run a manufacturing company and if you don't think we don't use our computers I think you don't really understand what that means in the real world.
Slashdot comments are always about how SSDs are unreliable and fail constantly, but manufacturers can't seem to crank out SSD equipped devices fast enough. Macbook Airs and the entire Ultrabook category are based around SSD storage. These complaints about endurance never seem to line up with real world experiences. I've been through three SSDs in desktops (Vertex 1, Vertex 2 and Vertex 4 running on both Windows and Linux) along with an SSD equipped Macbook Air (from 2010) and I've yet to have a single issue. I've been trying to figure out what the disparity is between real empirical evidence and the slashdot crowd's assumption of performance, and the only thing I can think is maybe you're overestimating the write volume on normal desktop computers? Honestly I don't know. All I know is that the usage and sales don't correlate with this concern over failure rate or capacity Slashdot seems to have. Apparently performance trumps all.
Anyone using SSD in an EMC VNX or VMAX array is using SLC as they have yet to qualify any MLC drive to meet their 5 year guarantee. I know the SSD's in our new 3Par array are also SLC. I've used a mix of eMLC and SLC drives in our database servers, SLC for our OLTP ERP database and eMLC for our data warehouse BI database.
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
of some sort of number manipuation that produces absolutely nothing.
Well, the way many modern tape drives work in Linux is acting like a non-seekable device that can have a single file written to or read from.
So if you had a BIOS bootloader or tape option ROM that could read the tape into RAM and then transfer control of execution to the beginning of the image, which would unpack the kernel and initrd and start booting Linux, it's completely possible.
If you have coreboot on your system I think you could really do it.
You just don't write that much data on a desktop. Yes, when you do a reinstall you write a lot but it really slows down after that. You can measure it and you find that really it is a somewhat rare day that you write a gig to your disk much less more.
Also all drives are over provisioned, there is space you don't see that they can use to swap in and out for wear leveling. This happens behind the scenes, beyond your control.
So the drive really will last quite a long time. If your use is desktop use, don't worry about it, buy a drive and enjoy it. Only for write intensive use do you need to do any calculations on it. If you want it as a backend for a database server, or you are using it to capture uncompressed video then yes, throw some math at it before you buy. However for a desktop? No, it won't be a problem.
So far I see a lot of complaints from people who don't appear to even know how to run SMART tools to get write cycle and wear statistics from their SSDs... you know, so real actual numbers can be posted.
So far none of my SSDs have failed, and I have almost 20 installed in various places. The one with the most wear is one of the first SSDs I purchased, an Intel 40G device:
da0: Fixed Direct Access SCSI-4 device
da0: Serial Number CVGB951600AC040GGN
da0: supports TRIM
Power on hours - 19127
Power cycle count - 48
Unsafe shutdown count - 32
Host writes x 32MiB - 375697
Workld media wear - 5120
Available reserved - 99/99/10
Media wearout - 91%
Basically 12TB worth of writes on this 40G drive over the last 2.18 years. No failures. Media wearout indicator 99 -> 91. Estimated durability based on the wear indicator is around 132TB. Roughly comes to ~3300 cycles/cell. This vintage of SSD uses MLC flash whos cells are roughly spec'd at ~10000 cycles.
While firmware issues are well documented for various SSD vendors over the last few years, and cell erase cycle life has gone down as the chips have gotten more dense, I would still expect the vast majority of failures to be due to wear-out.
Lots of things can cause premature wear-out but probably the most common would be using the SSD for something really stupid, like to host a database doing a lot of random writes or with a high frequency of fsync()s, using the SSD for swap on a system which is paging heavily 24x7, using the SSD for WWW log files on a busy web server, formatting an unaligned filesystem on the SSD or a filesystem which uses too-small a block size, and any number of other things.
Venerable but still mostly correct:
http://leaf.dragonflybsd.org/cgi/web-man?command=swapcache
The only adjustment I would make is that as the Intel 40G continues running, the wear I'm getting on it is pointing closer to ~130TB of durability and not 400TB (400TB is the theoretical max at 10,000 cycles/cell). Still reasonable. Generally speaking, that's the older 34nm technology. The newer 24nm technology will get fewer cycles but devices tend to have more storage so, as I say in the manual, you could expect similar total wear out of a newer 120GB 310 series SSD whos flash cells have 1/3 the cycle life.
-Matt
The latest LTO generations support a file system (LTFS) and can be used as (very high latency) hard drives. They are very fast at linear read/write access though - 140-160MB/s, a single hard drive is too slow to write to the tape.
If you've got 50% disk use then expect the lifetime to be cut in half because the used blocks cannot be part of the remapping.
That's the older firmwares. The newest ones are capable of moving data that tends to remain static onto the higher used blocks to free up blocks with more writes left.
Of course, this can be a tricky procedure to get right - too much churn and you end up killing the drive much quicker. Too little and you still end up with a unevenly worn drive.
I don't read AC A human right
I stand corrected.
Seriously, if you are worried, get an SSD that monitors itself. Samsung and Intel are good choices. They monitor how much actual writing has been done and give you a life estimate and so on. You will discover that no, you really don't do as much as you think most likely.
Also, Windows knows if you have an SSD in a slot and knows how to deal with it.
Does that also apply to SD and micro-SD cards? Nowadays these Raspberry Pi and comparable devices use micro-SD cards to run the operating system. I have the impression that typical flash cards and USB sticks nowadays use 4 MB erase blocks and the wear leveling on these is probably not very smart, so just a /var/log/syslog on a 4 GB card that gets a line every minute will wear itself out in about 2 years.
Actually I have had a couple of sd cards fail on me (one Nokia 2 GB dead on arrival (2008), later on an 8 GB and 2 GB card on other phones in the last two years within a two years after purchase).
On a related note: I wished that manufacturers of those thumb drives and sd cards specified not only sequential read/write throughput but also write throughput for random 4 kB blocks. With many drives, throughput will drop to 20 kB/s. (Source: http://forum.micromart.co.uk/Topic413730.aspx )
Avantslash: low-bandwidth mobile slashdot.
http://slashdot.org/comments.pl?sid=3475241&cid=42951835
* :)
(Only thing that's "held me back" from using these FLASH based SSD's is wear longevity... I opted for another solution, noted below, until they are PROVEN in this area, & better so!)
Doing what I listed there for the parent poster's ideas I replied to (decent ones, 'great minds think alike' & all that, albeit many years after I did, lol) has another "ancillary benefit" besides faster seek/access performance & such"
It lessens the workload on the SLOWEST part of typical computers: Hard Disk Drives, along with increasing their longevity BY LESSENING THEIR WORKLOAD!
Which, of course, also "speeds them up" by doing so in lightening their workloads, & allows FASTER program + data loads, bonus, as well as increasing their life.
APK
P.S.=> There's some "ideas" for you that I used to apply to software-based ramdrives, & LATER did very well on (which others are NOW only "stumbling into" for performance purposes in industry etc. really the past few years now).
However - NOW, instead, I use a "True SSD" as I call it, based on DDR-2 RAM instead in the Gigabyte IRAM for those listed items in the link above!
(Yes, not as fast as system ram, but faster than mechanical HDD's are in access/seek by FAR, but the bus used isn't as fast as system RAM is either, trade-off)
The ideas/techniques listed in the link above, however, DO still apply with ramdrive software - 1st's "iffy" if you don't have the RAM for it though!
(Ramdrive Softwares are nice, in that they use system RAM, nearly "as fast as it gets" (vs. cache ram types) & no "choking" by bus speeds like I get with the SSD I use (not really an SSD in 'modern terms' but close enough & I *think* you get my point/'catch my drift'))...
... apkcid=42951835
I have used a lot USB flash sticks for operating systems, and they wear out fairly fast. A couple of weeks is typical.
I am currently using SanDisk short sticks, and they have lasted the longest so far.
What do you think manufacturers do? Maxtor had a "burn in test" which I presume consisted of having the controller scan though each physical sector on the disk and map out the bad ones. They had racks that would power up a hundred or so drives at a time, just to allow this to happen. The "self test" program wrote its results to private areas of the drive so they could always look at them, with the right software.
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
RAM disks are no longer so useful for database engines because the modern engines can use multiple gigabytes of RAM natively. (You'll want to use a 64 bit OS to take full advantage.) If you're still using some kind of old database that can't use lots and lots of RAM a RAM disk might help.
It may be too late for this post, but Allyn over at pcper.com posted up some analysis of this article and that it leaves out important data:
Max data write speed did not take into account 8/10 encoding, meaning 6Gb/sec = 600MB/sec, not 750MB/sec.
The flash *page* size (8KB) and block sizes (2MB) chosen more closely resemble that of MLC parts (not SLC – see below for why this is important).
The paper makes no reference to Write Amplification.
"Write Amplification would be a factor of 500, meaning the flash memory is cycled at 500x the rate calculated in the paper." Gulp.
http://www.pcper.com/reviews/Editorial/Taking-Accurate-Look-SSD-Write-Endurance
http://www.anandtech.com/show/6459/samsung-ssd-840-testing-the-endurance-of-tlc-nand
Go to Heaven for the climate, Hell for the company -- Mark Twain
Hairy Feet,
I like what you said in this thread. It's helpful.
I have talked with two Intel employees who said they work in two different groups at Intel concerned with how processors interact with storage. They said Intel's SSD caching risks data integrity, and it is not possible to RAID Mirror Intel's SSD caching using Intel's Ivy Bridge chipset.
Also, quoting from the Intel Rapid Storage Technology RAID driver GUI: "The Windows write-cache buffer flushing policy can be enabled for all RAID array drives to ensure data integrity or disabled to improve data performance. Click the Help icon for more information on setting the wnte-cache buffer flushing policy based on your needs."
Based on talking with Intel employees, I have developed an opinion that SSDs and SSD interaction with processors are still in development stages. There are, it is apparent to me, many poorly managed groups at Intel. Only the CPU design group has been consistently successful. It's only my guess, but I'm guessing that former Intel CEO Paul Otellini was fired by Intel's board of directors for an especially severe issue of bad management.
I should have said that in my opinion, "Only the CPU and chipset design groups have been consistently successful." Also, that is only an outsider's opinion. There may be well-managed groups inside Intel that are unknown to me.
Nope. I decided that I don't need the technology some years ago, and have seen nothing to cause me to re-think that position. I don't need "super-fast boot times" because I re-boot every few weeks. The amount of data that I keep around and want to access is high enough that SSDs aren't in the feasible price range, and the main constraint on me finding stuff is thinking "where would I have put that?" Which is much faster than brute-force searching.
Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
Getting into semantic subtleties here... if you've got a huge DRAM-based disk (that is, an SSD with DRAM instead of flash), that for whatever reason couldn't donate its capacity as system memory, then that's a superb place to put a page file.
But then, it wouldn't be a RAM disk. A RAM disk lives in system memory.