The SSD Anthology: Understanding SSDs and New Drives from OCZ
by Anand Lal Shimpi on March 18, 2009 12:00 AM EST- Posted in
- Storage
The Return of the JMicron based SSD
With the SSD slowdown addressed it’s time to start talking about new products. And I’ll start by addressing the infamous JMicron JMF602 based SSDs.
For starters, a second revision of the JMF602 controller came out last year - the JMF602B. This controller had twice the cache of the original JMF602A and thus didn’t pause/stutter as often.
The JMicron JMF602B is the controller found in G.Skill’s line of SSDs as well as OCZ’s Core V2, the OCZ Solid and the entire table below of SSDs:
JMicron JMF602B Based SSDs |
G.Skill FM-25S2 |
G.Skill Titan |
OCZ Apex |
OCZ Core V2 |
OCZ Solid |
Patriot Warp |
SuperTalent MasterDrive |
All I need to do is point to our trusty iometer test to tell you that the issues that plagued the original JMicron drives I complained about apply here as well:
Iometer 4KB Random Writes, IOqueue=3, 8GB sector space | IOs per second | MB/s | Average Latency | Maximum Latency |
JMF602B MLC Drive | 5.61 | 0.02 MB/s | 532.2 ms | 2042 ms |
On average it takes nearly half a second to complete a random 4KB write request to one of these drives. No thanks.
The single-chip JMF602B based drives are now being sold as value solutions. While you can make the argument that the pausing and stuttering is acceptable for a very light workload in a single-tasking environment, simply try doing anything while installing an application or have anti-virus software running in the background and you won’t be pleased by these drives. Save your money, get a better drive.
The next step up from the JMF602B based drives are drives based on two JMF602B controllers. Confused? Allow me to explain. The problem is that JMicron’s next SSD controller design won’t be ready anytime in the near future, and shipping mediocre product is a better option than shipping no product, so some vendors chose to take two JMF602B controllers and put them in RAID, using another JMicron controller.
Two JMF602B controllers and a JMicron RAID controller
The problem, my dear friends, is that the worst case scenario latency penalty - at best, gets cut in half using this approach. You’ll remember that the JMF602 based drives could, under normal load, have a write-latency of nearly 0.5 - 2 seconds. Put two controllers together and you’ll get a worst-case scenario write latency of about one second under load or half a second with only a single app running. To test the theory I ran the now infamous 4K random write iometer script on these “new” drives:
Iometer 4KB Random Writes, IOqueue=3, 8GB sector space | IOs per second | MB/s | Average Latency | Maximum Latency |
JMF602B MLC Drive | 5.61 | 0.02 MB/s | 532.2 ms | 2042 ms |
Dual JMF602B MLC Controller Drive | 8.18 | 0.03 MB/s | 366.1 ms | 1168.2 ms |
To some irate SSD vendors, these may just be numbers, but let’s put a little bit of thought into what we’re seeing here shall we? These iometer results are saying that occasionally when you go to write a 4KB file (for example, loading a website, sending an IM and having the conversation logged or even just saving changes to a word doc) the drive will take over a second to respond.
I don’t care what sort of drive you’re using, 2.5”, 3.5”, 5400RPM or 7200RPM, if you hit a 1 second pause you notice it and such performance degradation is not acceptable. Now these tests are more multitasking oriented, but if you run a single IO on the drive you'll find that the maximum latency is still half a second.
The average column tells an even more bothersome story. Not only is the worst case scenario a 1168 ms write, on average you’re looking at over a quarter of a second just to write 4KB.
The G.Skill Titan has recently garnered positive reviews for being a fast, affordable, SSD. Many argued that it was even on the level of the Intel X25-M. I’m sorry to say it folks, that’s just plain wrong.
One of the most popular dual JMF602B drives
If you focus exclusively on peak transfer rates then these drives work just fine. You’ll find that, unless you’re running a Blu-ray rip server, you don’t spend most of your time copying multi-GB files to and from the drive. Instead, on a normal desktop, the majority of your disk accesses will be small file reads and writes and these drives can’t cut it there.
Some vendors have put out optimization guides designed to minimize stuttering with these JMF602B based drives. The guides generally do whatever they can to limit the number and frequency of small file writes to your drive (e.g. disabling search indexing, storing your temporary internet files on a RAM drive). While it’s true that doing such things will reduce stuttering on these drives, the optimizations don’t solve the problem - they merely shift the cause of it. The moment an application other than Vista or your web browser goes to write to your SSD you’ll have to pay the small file write penalty once more. Don’t settle.
But what option is there? Is Intel’s X25-M the only drive on the market worth recommending? What if you can’t afford spending $390 for 80GB. Is there no cheaper option?
250 Comments
View All Comments
OCedHrt - Wednesday, March 18, 2009 - link
Excellent article. One of the best I've seen.cliffa3 - Wednesday, March 18, 2009 - link
I can tell a ton of work went into that, and all the history/details are greatly appreciated. I've been checking every week or so throughout February to see if it had been posted, but well worth the wait. As great as SSDs are, I can understand you not wanting to be near one for a while (-: Thanks for all the hard work...especially from the consumer standpoint. And kudos to OCZ for stepping up the way they did...that's (unfortunately) unheard of. Glad to see your no-compromise / report the facts no matter what attitude winning for the consumer. I'm glad at least one manufacturer was able to see (eventually) your intent wasn't to create a commotion, but to just plainly say what needed to be said.sngbrdb - Wednesday, March 18, 2009 - link
An extremely (as always) informative article; comprehensive and no angle missed. Good stuff!From an enthusiast's perspective, OCZ gained 10 levels of trust as a result of Ryan Peterson's response and handling of the Vertex' firmware. Ryan accepted the harsh reality expressed to him from an outside reviewer, risked marketability to rely on Anand's expertise (Anand is *absolutely* correct that 230MB/s is worthless if it comes with stuttering write latency), and resolved the problem in record time.
This is the rare kind of responsiveness and attitude that translate directly into sales (I'm on my way to price the Vertex now).
tshen83 - Wednesday, March 18, 2009 - link
BUT, still based on Windows Vista.I am going to drill this into reviewer's head -> NTFS isn't designed for SSDs.
There are three problems for properly reviewing SSDs today:
FileSystem, RAID controller, and SSD controller.
Each of them can compensate for the SSDs, the question is which one SHOULD be responsible for optimizing random IOs.
It is very clear that Intel's SSDs have implemented all the nitty gritty stuff like copy on write onto the SSD controller itself. So the OS or FileSystem shouldn't be responsible for performance degradation, however the same cannot be said for other SSDs.
I am sure results would be difference if this were conducted on Solaris/OpenSolaris ZFS with Adaptec 5405(IOP348 based RAID card). Not to pump Solaris and ZFS, but it is the primary reason why IBM wants to buy SUN, because it is the only File System on the market that can properly operate SSDs and to do so without RAID controllers.
If Anand really wants to stick to windows still, I think benchmarking on Windows 7 Beta would be slightly better option that Vista. Windows had made a lot of optimizations for rotational based hard disks that it actually makes SSD perform worse.
The Vertex random write 4K IOPS benchmark doesn't look right at 2.6MB/sec, that is hardly 650 IOs. It should be much higher. It could be the ICH10R controller though.
hyc - Wednesday, March 18, 2009 - link
I'd expect IBM's JFS to be pretty efficient on an SSD as well. Anything that appends and avoids overwriting existing sectors will perform better here.Stepping back a bit, I still have a perfectly usable Dothan-based laptop with IDE. Any chance of getting an in-depth review on recent Transcend 128GB IDE SSDs? My new laptop is running fine with a G.Skill Titan 256GB SSD, but when I fire up the older laptop it's unbearable, even with that 7200rpm Hitachi 100GB drive inside.
By the way, I paid under $2/GB for the 256GB G.Skill Titan; for the work I do with it on Linux it performs fine most of the time. (Just make sure to maximize use of the FS cache.) I don't see the value proposition for the OCZ Vertex or Summit.
tshen83 - Wednesday, March 18, 2009 - link
The random write 4K benchmark isn't right for the Vertex and other SSDs because of the test procedure:"The write test was performed over an 8GB range on the drive, while the read test was performed across the whole drive."
It partially disables any write optimization algorithms on the Vertex. Intel wasn't affected as much.
Anand, your first article pumping X25-M literally screwed Samsung's SSD manufacturers big time: they lost hundreds of millions of dollars because of your blatant pumping. Yes the random write was a big problem, but so was testing it on a Windows OS with NTFS and integrated SATA controller like ICH9/10 with no ram cache and obviously lack of IO optimizations for SSDs.
Please redo the review with a proper OS, ie Windows 7 beta or OpenSolaris.
Proteusza - Thursday, March 19, 2009 - link
Yeah, who in their right mind uses Windows and integrated SATA controllers? Oh wait, nearly everyone.Since its pretty obvious that you either work for Samsung or one of their partners, I think its laughable that you think this cost them hundreds of millions in sales. How big is the SSD market exactly, and how many potential buyers visit this site? Not enough to cause such an impact if you ask me.
And the fact remains - had you guys done what OCZ did, and optimized for real world use even if it cost you e-peen in the way of benchmarks, you would have been fine. Its only because you thought you could cheat and swindle consumers that you guys got a bad rep from Anand. Run an honest business, and your customers will thank you. I know that, if I ever considered an SSD, I would either buy Intel or an OCZ Vertex, nothing else. You know why? because they do what they say on the tin. You complain that the X25-M got a glowing review? Make a product as good as it and then Anand will sing your praises, but dont be upset when he tells it like it is.
tshen83 - Thursday, March 19, 2009 - link
Nearly everyone uses Windows and integrated SATA controllers. It still does not negate the fact that neither were optimized for SSD random IO patterns.No, I don't work for Samsung or its partners. It didn't cost them hundreds of millions in sales, but it did cost them hundreds of millions in inventory markdowns. Just look at the free falling of price of JMicron and original Samsung based SSDs in the past few months, and multiply by the inventory, that's the loss I was mentioning.
I am not saying that Intel X25-M is a bad drive. It is good. but there is no reason to use crippled OS File Systems and crippled SATA controller to show off the X25-M's internal copy on write features. When windows 7 comes out of beta(soon), it will be the OS the majority of people will use, and I am just looking forward 6 months when SSD adoption rate will improve more. As to Solaris ZFS, you don't need it if you aren't mentally capable of understanding its elegance.(Most people won't and it is ok)
strikeback03 - Thursday, March 19, 2009 - link
If they had also tested with Solaris/ZFS and reported that the drives worked well there, but 99.x% of users can't take advantage of that, would you have been happier? They may work perfectly well in that scenario, but it is meaningless to most users. Working properly in Vista and OSX is currently a requirement for selling to general consumers. Windows 7 was not even available in beta at the time of the last test, I would expect they will test with it once it launches but for now with the OS/FS they are likely to use most of the available SSDs fail.Also, your economic analysis assumes they would have been able to sell all their inventory at the inflated prices they wanted to. Whether or not they received a negative review from sites like Anandtech, word would have gotten out from early adopters that they had problems. Also, they would have moved fewer units at those prices.
tshen83 - Thursday, March 19, 2009 - link
I could really careless if they did review SSD ZFS. I am using it right now and it kicks ass. Next Version of OSX will have ZFS so I guess Apple agrees that ZFS is the way to go here.Vista is one of the crappiest OS Microsoft put out in recent memory, maybe besides the Windows ME release. Just look at Vista adoption rates, and you will see why.
You still don't understand my argument. My argument was that either File System, or RAID controller or SSD controller must implement copy on write.(basically if you have to erase a block to write to it, you are screwed) ZFS implements that in the file system. Adaptec 5 series or any Intel IOP RAID cards also help SSD performance greatly. If you don't use those two, then the SSD controller must implement it(X25-M is in this category.) You only need one of the three to properly handle SSDs to get greatly improved performance. Anandtech's review obviously skips file system optimization by picking Vista, and RAID controller optimization by picking ICH10R. What is left is the poor SSD controller that needs to virtualize the logical space, thus making the review entirely biased toward the X25-M for a good reason.
It is sad that this is supposedly a review for the Vertex units that OCZ sent to Anand, but it seems to me that it just turned out to be another article defending the X25-M. I know X25-M is a good SSD, but it does not explain why Anand should cripple the OS, Controller so much to do it and then test the SSDs with strange IO queue depth of 3 and during the random write IOPS test, tried to cap the write space to a 8GB confinement. Those settings greatly exaggerate X25-M's internal implementation advantages.
My economic analysis was based on SSD spot price published on dramexchange.com. Since the release of X25-M's review by Anandtech, all Samsung/JMicron MLC drives(Core, Core v2, Supertalent, etc) have been reduced to spot price of 2 dollars per GB to clear the inventories from the typical 4-5 dollars per GB that they used to command. The inventory markdown can be as high as 200+ dollar per drive and then you multiply that by the inventory that major vendors had, giving you hundreds of millions of dollars of aggregate damage sustained by the group of Samsung/JMicron partners.