08-22-2012 04:41 AM - edited 09-10-2012 02:58 AM
This is my first post here. I already own a 240GB SanDisk Extreme and I'm waiting for a second one to arrive tomorrow!
I wanted to provide some tips for novice users who may worry about the poor performance of their drives.
When SSDs are advertised, the figures that you see are usually based on synthetic benchmarks using 0-fill/1-fill data, not Random. 0-fill/1-fill gives higher numbers so the companies use those to entice customers into choosing their products. You can easily see the difference between 0-fill/1-fill and Random benchmarks by using CrystalDiskMark. I'd recommend for you to download the portable version as it needs no installation, just run the executable. Click File - Test Data and choose 0-fill or 1-fill. Do a run, then choose Random (which is the default) and you'll see the difference in numbers. Latest version is 3.0.1c, it's free, get it from here:
Another good free benchmark which is made specificaly for SSDs is AS SSD Benchmark. It provides more realistic results than CrystalDiskMark and it uses incompressible data for its test; so don't expect high numbers out of SandForce drives like the Extreme (which work faster with compressible data). It's a german project, but the software also has english support (select it under the Language menu of the program). Get it here:
The top performance that you see on various reviews online is based on brand new out-of-the-box drives. Out of the box all SSDs are fast but the performance will deteriorate over time, especially when the drive is almost full. This is even more evident on drives with SandForce controllers (like our SanDisk Extreme).
Most modern SSDs will perform wear leveling and automatically recover at least some of their performance over time. This is done by the SSD's internal Garbage Collection which is is built-in in the SSD's controller and kicks in automatically when the drive is idle - it cannot be initiated by the user. Performance recovery also takes place by the issuing of the TRIM command in Windows. TRIM is initiated automatically by the OS after files have been deleted (Vista SP2 and Win7 only, WinXP doesn't support TRIM).
There are some software which allow you to manually induce the TRIM command. SSD Tweaker Pro and Tweak-SSD both have such a function but only on their paid versions. Personally I use a free program (ForceTrim) which was made available at the OCZ forums in the past. It forces TRIM on the drive, but it is currently hard to find. Remember, it is not supported for RAID configurations. I managed to find a copy after a lot of searching, and I have uploaded it here:
Here's a test I performed today that proves that this little program does work:
Don't forget to save screenies of your PRE-TRIM and POST-TRIM results for later comparisons.
The great thing about the Extreme for me is its great out-of-the-box performance, which is at least on a par with other more expensive brands. It also sports an unusual quality. Have a look here for a comprehensive review that showcases its equally strong 4K IOPS results for both read and write testing - which is something of a rarity:
Of course the degree of the performance you will be able to get back by TRIM and Garbage Collection, depends on how full is the SSD, and how optimized is its firmware. The efficiency of TRIM and GC varies between manufacturers. Currently the SanDisk Extreme suffers from poor firmware as you can see from the Degradation and Steady-State Performance tests here (this is the most recent test for the SanDisk Extreme):
I hope that SanDisk will produce a properly tweaked firmware soon with optimized algorithms for garbage collection, and with a TRIM that gives back the performance. Don't expect miracles, like the Vertex 4 recovery figures on the above link, that model uses an Indilinx controller, not SandForce. Still, if SanDisk puts some effort into it they can produce a tweaked firmware that does the job at least adequately. SanDisk, we are waiting!
At the end of the day, the only way to get the full performance back out of a modern SSD is to secure-erase it. This will bring a used-and-abused SSD back to its new out-of-the-box state. Some manufacturers provide tools for secure-erasing but SanDisk doesn't - and I hope this changes in future SanDisk releases, an included tool to secure-erase would be great. You can still do it using a bootable USB stick containing Parted Magic. You will also need unetbootin to convert the Parted Magic iso into a bootable USB stick. They are both free. Secure-erasing the SSD is a very fast process, upon issuing the command it is done in less than a second. It is straight-forward provided you are experienced enough. If you are a beginner, then please leave it well alone.
Here are some pointers:
Get Parted Magic and unetbootin here (there are instructions on how to use them on those sites, but most seasoned SSD ab-users will already know what to do):
The storage driver used is another factor that can influence SSD performance. I recently tested my OCZ Vertex 3 Max IOPS in order to find out the performance difference between the Intel Chipset Utility driver versus two versions of the Intel Rapid Storage Technology enterprise (RSTe) driver. The Intel RSTe drivers are quite hit and miss and results vary between different versions as you can see on my benchmarks, starting on the following post and onwards:
Future tests I plan to do:
Follow the SSDReview forum link above for those updates.
Thank you for reading this. Take care all, and lets hope that SanDisk will provide us with a truly optimized firmware soon!
09-09-2012 10:36 PM
Had a question for you. Bad_Medicine. I've downloaded the force trim app, but I'm curious as to thia part of the description.
"Forced-TRIM will fill up all available space and free it again.
Is this how the trim function normally acts when it's called by OS/Firmware?
"Space is allocated only; no actual writing is done. It will cause very little wear to your drive."
If no actual writing is done, then why is wear caused at all? This line seems a bit ambiguous to me.
09-09-2012 11:11 PM - edited 09-09-2012 11:18 PM
@Bad_Machine It is important to point out your suggested strategy for SSD management applies to Windoze only, does it not? Not all SSD end-users are Windoze victims. For Mac, Linux and other OS users, constructive SSD management procedures are likely to be (vastly) different. May I quote from a knowledgeable Linux user's post on another web-site? "First, a secure erase is one of the WORST things you can do to your SSD! A secure erase performs a write on every erase block of the SSD. It’s like filling-up your SSD with data up to the last byte! The only difference is that the SSD controller regards all the erase blocks as empty, so it’s like the SSD is new, but in reality it’s significantly older, as the full capacity write normally happens during some months of real use. PLEASE, ONLY do a secure erase when either DUMPING the drive or giving it to someone else and you’re concerned about your sensitive data!! "Second, whatever OS one chooses to put on a SSD, it is important that it supports TRIM. It is TRIM that prolongs the life of the drive and allows its controller to uniformly spread the writes to all the erase blocks of the SSD. "Third, a format will most DEFINITELY NOT write zeros over a partition! That’s super-old-school FAT stuff, that even it, in its newer incarnations, is not doing. File systems’ format processes these days just create the structures they need. "Fourth, there are currently two FSs you can use with SSDs on Linux, EXT4 and BTRFS. That’s because they’re the only ones that support TRIM. Now I haven’t tried BTRFS, but EXT4′s format program (mke2fs) does recognize the device is solid-state and issues a TRIM over the entire partition. That’s the proper and only needed step to do when formating a partition. Everything else will be done by the SSD controller. "You mention in your article that a secure erase is what you do to measure the full speed of your SSDs. Yes, a secure erase will bring back the lost performance. But it will also kill your SSD faster! With each secure erase you do, the performance benefits will last for a shorter and shorter time! Benchmarks on top of that will suck the life out of them. I wonder how many SSDs you’ve killed this way!" To which I might add, secure erase is definitely not a failsafe procedure. Bricked SSD, anyone?
09-10-2012 01:29 AM
I thing you are mixing things up. What you describe is a secure-erase/low level format of an HDD. For SSDs there is a special erase command - I assume that is waht Bad_Machine is referring to. As the erase is done by the controller itself you are facing is that every flash chips is getting written - if the SSD does not use cryptography inside. In the latter case a secure erase simply erases the cryptographic key and hence all data are gone.
09-10-2012 03:05 AM - edited 09-10-2012 03:29 AM
Thank you memrob, that's exactly what I meant.
Your first question: After you delete a file in the OS, TRIM sends a request to the SSD's controller to discard the useless data for cells that contain that data only. This allows the SSD to use less P/E cycles and optimizes the drive's garbage collection speed and efficiency (since it doesn't have to handle the deleted data). The ForceTrim program simulates a write and then a delete on all the empty cells of the SSD thus forcing TRIM for all those cells; so all free cells are force-flushed by the controller. I don't know how it does that, but it does work.
Your second question: I don't really know. There is no documentation with ForceTrim. I can only pressume that some P/E cycles must be used when simulating the writes on the free space, so there will be a little bit of wear after all; but this is only a guess.
Thank you for you comments. Some of them do not apply to my intitial post (e.g formatting under Linux - I've never mentioned formatting the SSD anyway). The vast majority of users use Windows anyway so this is what I use for my benchmarks.
Regarding secure-erasing: Maybe you are not aware that the SSD-specific secure-erasing ATA command applies a voltage spike simultaneously to all the NAND of the SSD, this flushes all the stored electrons from the cells. This has nothing to do with the traditional secure-erasing on HDDs. Each secure-erase uses a single P/E cycle, that's why it shouldn't be used all the time. Secure-erasing in this manner will bring back the performance of modern SSDs to their initial out-of-the-box state. The performace benefits last longer than you believe, especially with non-Sandforce drives.
I only use secure erase before running benchmarks, or on average a couple of times per year. I secure-erase, then restore my most recent backup on the drive and everything is faster for a while.
You wrote: "I wonder how many SSDs you’ve killed this way!" No, I haven't killed any SSDs yet. To tell you the truth I find that part of your posting offensive. So far I've only had a single OCZ Vertex 3 Max IOPS die on me after 6 months of service (and no secure erases whatsoever), but this is a common thing with OCZ sandforce SSDs.
Everything will kill your drive faster. Writing a lot of stuff on your SSD and then deleting it will kill it faster. The thing is there to be used, not to be treated like a precious flower. Lets be realistic here. The one or two P/E cycles that secure-erase will use per year won't make any noticeable difference in the overall lifespan of your drive.
09-10-2012 03:27 AM
"Offensive"? Did you read and comprehend my post properly? Please check again. I was merely quoting another relevant post from another forum by another poster dealing with Linux-only SSD issues *in its entirety* so its context could not be misconstrued. His comments are not mine! OK?
I only added a polite warning at the end regarding secure erase. That was done for the sake of balance and information. BTW may I ask how much knowledge and experience you have in dealing with Mac and Linux?
"The vast majority of users use Windows anyway........" Really? Combining all internet servers, academic, scientific, military, mobile devices, Mac-devout households, embedded devices, widespread European preference for Linux, etc there is a sizeable and growing non-M$ contingent of users and uses. Nobody can put a precise figure on platform percentage in the world today. Not me. Certainly not you. ;-)
09-10-2012 04:25 AM - edited 09-10-2012 04:31 AM
I'm sorry nightcap, I thought that it was your comments. Without any line breaks on your post it was a bit hard to seperate your own remarks from the ones belonging to your reference.
Apologies, and thanks again for your valuable input.
10-30-2012 01:10 AM
I have both the Mushkin and 2 SanDisk 240s. The Mushkin is in W7. The SanDisk was going in a 2008 MBpro until reading this post. The SanDisk seems to have one of the highest reliability ratings, despite the controller ... which is why I bought it for the MB. Maybe it will work better in another W7 machine, and put a S... 830 or 840 in the Mac? Don't really have the budget.