The Generic MLC SSD Problem in the Real World

Based on the Iometer results I knew for sure that there was an issue with random write performance on these SSDs, the only common thread between them being the type of controller (JMicron JMF602) and the MLC flash devices being used (Samsung). But I wanted to see if I could get the high latency writes to appear in a real-world benchmark-able way.


The Samsung SLC controller

 

The first indication that something is wrong actually comes from running the Windows Vista install itself, the MLC drive takes 25% longer to complete the install (let’s just ignore the part about the full install not being fully functional upon completion). Clearly there’s an issue with write speed. I ran into something similar with OS X, but I didn't put it together until now.

The problems are far worse in Vista. While OS X will just pause until the data is written, Vista doesn’t seem to respond well to unusually long file write delays. I haven’t been able to get the Vista install to complete without errors on the OCZ Core drive. One install completed but I was greeted with this error as soon as I hit the desktop:

Trying to reinstall gave me this error even before I booted into Vista:

It looks like the Vista install doesn’t do well with significant delays when writing files to the disk. The only way I could actually get a reliable Vista install on the Core drive was by cloning another drive with a working Vista image on it.

For the next test I tried creating a 200MB archive of pictures:

 

So far, so good. The OCZ Core performs no differently than the rest of the pack. Now let's try creating the same archive, but also extracting one at the same time:

 

Ah-ha! Now we're on to something, the SLC and Intel MLC drives are both around 30% faster than the OCZ Core. Let's try creating the same archive but extracting a much larger one:

  Creating 200MB Archive Extracting 5GB Archive Number of Pauses
SuperTalent (JMicron, MLC) 83 seconds 573 seconds lots
Silicon Power (JMicron, MLC) 128 seconds 632 seconds tons
OCZ Core (JMicron, MLC) 60 seconds 222.7 seconds 20
OCZ (Samsung, SLC) 42 seconds 94.7 seconds 0
Intel X25-M (Intel, MLC) 42 seconds 113.7 seconds 0
Seagate Momentus 7200.2 72 seconds 260.6 seconds 0
Western Digital VelociRaptor 46 seconds 90.9 seconds 0

 

You'll notice a new column called number of pauses; this column is the number of times all disk activity ceased on the system, causing the whole machine to stutter for a moment. You'll also notice that there are zeros in this column, unless the drive uses the JMicron controller. Also note the randomness of the problem, the OCZ, SuperTalent and Silicon Power drives all use the same hardware yet I saw tremendous variations between runs. This is a manually timed test but the rest of the drives didn't vary nearly as much.

It's also important to note that while the Seagate notebook drive performed similarly to the Core, it didn't suffer from the pauses. What this helps illustrate is the nature of the problem, it's very bursty - you get a period of very high performance followed by an abrupt stop. The abrupt stops, as we now know, are these 0 - 2 second write latencies where everything in the system is completely starved of data until the write is complete.


Poor hungry CPU, it just wants to eat. Comic by Laura of www.laurascomics.com

From the CPU's perspective, it expects new data on a nanosecond scale, waiting a full second for anything is deadly for performance.

Another way of quantifying the impact is looking at how long it takes to launch an application when we're in this high-latency write period. I tried extracting the same 5GB archive and launching PowerPoint 2007 or Photoshop CS3 (not at the same time).

  Launching PowerPoint 2007 While Extracting 5GB Launching Photoshop CS3 While Extracting 5GB
OCZ Core (JMicron, MLC) 8.5 seconds 24.3 seconds
OCZ (Samsung, SLC) 2.8 seconds 9.3 seconds
Intel X25-M (Intel, MLC) 3.85 seconds 10.5 seconds
Seagate Momentus 7200.2 21.3 seconds 46.5 seconds
Western Digital VelociRaptor 8 seconds 23.5 seconds

 

All of the drives took longer to launch the applications, but while the SLC and Intel MLC drives still performed in a league of their own, the MLC drives behaved like conventional hard drives. Try running an application while your disk is busy doing something else, or better yet, try running a couple - they take forever. SSDs fix that problem, or at least they're supposed to. These MLC drives don't, at least not always; thankfully the SLC drives and more importantly, the Intel MLC drive don't exhibit this problem.

Delving Deeper A Lack of DRAM or a Lack of Cache?
POST A COMMENT

97 Comments

View All Comments

  • Donkey2008 - Monday, September 08, 2008 - link


    Starting sentences with a conjunction is acceptable, but it is considered bad prose. You are giving everyone a headache. Go take your ritalin.
    Reply
  • ggordonliddy - Monday, September 08, 2008 - link

    As you stated, my English usage was correct.

    And I'm not the one writing the article; the burden is much greater on the people who are being PAID to write, as it should be. They are setting the example for others.
    Reply
  • mindless1 - Thursday, September 11, 2008 - link

    As a paying customer I urge you to ask for a refund. Reply
  • Jingato - Monday, September 08, 2008 - link

    What kind of loser gives a f*** about improper use of commas? This aint a novel, it's a friggin tech site.

    lol get a life.
    Reply
  • ggordonliddy - Monday, September 08, 2008 - link

    You are just making it clear that you do not have a firm grasp of English. You are afraid of those who criticize poor grammar, because you know that you yourself will be exposed for the fraudulent pustule that lies beneath your slimy veneer.

    I have a life. I'm just sick of illiterate authors. Just because it is a tech site is no excuse for extremely poor writing skills. I'm talking about skills that should be completely mastered before being allowed to graduate from elementary school.
    Reply
  • Jingato - Tuesday, September 09, 2008 - link

    No, I just don't give a f***.....there's a difference.

    I think you're being way too over critical. Maybe it's you OCD kicking in. If those incorrect commas really bothered you THAT much, then you should seek professional help. Seriously, that's not normal.
    Reply
  • aeternitas - Thursday, September 11, 2008 - link

    If you dont give a ****, then shut the hell up. Reply
  • Gannon - Tuesday, September 09, 2008 - link

    Anand's editors should get this:

    http://www.whitesmoke.com/landing_flash/free_hotfo...">http://www.whitesmoke.com/landing_flash...otforwor...

    I've used it, it is not currently on this machine but what you do is you press "F2" and it checks your grammar and makes suggestings and points out errors, etc.
    Reply
  • DerekWilson - Tuesday, September 09, 2008 - link

    From your comment:

    "You are afraid of those who criticize poor grammar, because you know that you yourself will be exposed for the fraudulent pustule that lies beneath your slimy veneer."

    "... that you yourself will be exposed ..." should, in fact, be properly punctuated with commas like so: "... that you, yourself, will be exposed ..."

    I agree that grammar is important. But you have to admit that screwing up on comma usage while pointing out someone screwing up on comma usage is funny.

    ...

    Also, while it isn't an excuse, the last two days of work on this article were sleepless ... Anand wanted to get it up much sooner, and sometimes we have to make the decision to get the article out quickly rather than to send it through our managing editor.

    We do always appreciate people pointing out spelling and grammar errors in our articles. We never want to over shadow the content with other issues.
    Reply
  • ggordonliddy - Tuesday, September 09, 2008 - link

    > "... that you yourself will be exposed ..." should,
    > in fact, be properly punctuated with commas like so:
    > "... that you, yourself, will be exposed ..."
    >
    > I agree that grammar is important. But you have to admit
    > that screwing up on comma usage while pointing out someone
    > screwing up on comma usage is funny.


    Wrong. A comma is not required between "you yourself." See http://www.selfknowledge.com/109331.htm">http://www.selfknowledge.com/109331.htm and other examples.

    I am a bit sorry for being so abrasive in my original post though. Run-on sentences just drive me nuts.
    Reply

Log in

Don't have an account? Sign up now