HOW TO GET YOUR SSD PERFORMANCE BACK

Hi guys

 

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:

 

http://crystalmark.info/download/index-e.html

 

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:

 

http://www.softpedia.com/get/System/Benchmarks/AS-SSD-Benchmark.shtml

 

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:

 

http://www.mediafire.com/?1cd8dh0msw2jq1w

 

Here’s a test I performed today that proves that this little program does work:

 

http://thessdreview.com/Forums/software/2647.htm

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:

http://thessdreview.com/our-reviews/sandisk-extreme-240gb-sata-3-ssd-review-equal-4k-readwrite-iops-performance-observed/

 

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):

 

http://www.xbitlabs.com/articles/storage/display/sandisk-extreme-ssd-240gb_4.html

 

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:

 

  • You need to have a recent, verified backup of your Windows partition before trying any of this.  Secure-erasing will delete all partitions on your SSD and will revert it to its out-of-the-box state.  You should also have a bootable media that contains your favorite backup program; so after secure-erasing you will be able to boot into your backup application and restore your backup on the clean drive.

  • If you get an error message about your drive being frozen when trying to secure erase, this means that your drive is in ‘panic mode’.  This is not as bad as it sounds, your SSD is OK.  At this point ignore Parted Magic’s advice to put the system to sleep in order to unfreeze the drive.  All you need to do at this point is to unplug the SSD’s power cable, wait a few seconds, then plug it back in.  You will then be able to secure erase the drive. IMPORTANT:  IF YOU HAVE MORE THAN ONE SSD IN YOUR SYSTEM, MAKE SURE YOU ARE SECURE-ERASING THE RIGHT ONE.  It may sound self-explanatory, but there have been cases where users picked the wrong SSD for secure-erasing and lost all their data in a second!  This mistake is very easy to make, especially if you have two or more identical SSD models connected.

 

  • After secure-erasing your SSD it may need to be re-initialized in order to be recognized by your backup program.  You may have to connect it to a different computer first in order to initialize it using the Windows Disk Management applet.  Or you can initialize it using the bootable partition manager of your choice.

 

  • Also note that secure-erasing the SSD frequently is NOT recommended.  Only do it rarely, when you are 100% sure that your drive needs it.  You will be doing this at your own risk and obviously I accept no responsibility.

 

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):

 

http://partedmagic.com/doku.php?id=downloads

http://unetbootin.sourceforge.net/

 

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:

 

http://thessdreview.com/Forums/hardware/1549-11.htm#post24184

Future tests I plan to do:

  • Benchmarking the SanDisk Extreme with the two previous RSTe drivers plus the latest v3.2.0.1126, versus the latest Intel Chipset Utility driver.

  • Comparative benchmarking of the Extreme in stages: From completely empty out-of-the-box all the way to 95% full, in order to showcase the drop of perfomance that can be experienced as the drive progressively fills up with data.

  • Testing the efficiency of TRIM and GC for future SanDisk Extreme firmwares, again at different stages of drive fill.

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!

 

 

 

great post. I beleive you got everything covered. Welcome to the forums!

Thank you for your kind words drlucky! :smiley:

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.

This causes the SSD to TRIM all free space."

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.

 

If you could clarify this for me, I’d appreciate it, thanks

@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 ■■■■ 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?

Hi nightcap,

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.

Thank you memrob, that’s exactly what I meant.

@ Hypereia

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.

@ Nightcap

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.

@ Bad-Machine

“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.  :wink:

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.

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.

I wanted to add my 2¢ about TRIM on a Mac. I’m currently using a SanDisk Extreme 480GB on my mid-2010 MacBook Pro running Mountain Lion with great results. Apple doesn’t offer TRIM support for any SSDs other than their own, but there is software that will hack the OS and enable TRIM. It’s called Trim Enabler and works very well. It’s free, although with all freeware, I’d highly suggest a small donation to the developer!

My Extreme installed easily and has transformed my MBP into a new machine. I can’t speak to the technicalities, but I can say that my laptop boots in seconds, and programs just pop onto the screen. In particular, I use Photoshop 6 daily and it takes no more than 3-4 seconds for it to be ready to use. Even Apple programs that are famous for their latency at boot, like Pages, just race onto the screen.

The only caution I’d offer with Trim Enabler is that after a system upgrade, say going from 10.8.1 to 10.8.2, you’ll need to rerun Trim Enabler, then reboot one more time to get TRIM support active. Other than that one situation, it is a totally trouble-free solution for enabling TRIM support on a Mac.