Random Read/Write Speed

This test reads/writes 4KB in a completely random pattern over an 8GB space of the drive to simulate the sort of random access that you'd see on an OS drive (even this is more stressful than a normal desktop user would see). I perform three concurrent IOs and run the test for 3 minutes. The results reported are in average MB/s over the entire time.

I've had to run this test two different ways thanks to the way the newer controllers handle write alignment. Without a manually aligned partition, Windows XP executes writes on sector aligned boundaries while most modern OSes write with 4K alignment. Some controllers take this into account when mapping LBAs to page addresses, which generates additional overhead but makes for relatively similar performance regardless of OS/partition alignment. Other controllers skip the management overhead and just perform worse under Windows XP without partition alignment as file system writes are not automatically aligned with the SSD's internal pages.

First up is my traditional 4KB random write test, each write here is aligned to 512-byte sectors, similar to how Windows XP might write data to a drive:

4KB Random Write - MB/s

Here we see the first real impact of the SF-1200's final, shipping firmware. Random write performance drops down a bit, but not by a lot. However the SandForce controllers perform best when run in OSes that align across 4K boundaries:

4K Aligned - 4KB Random Write - MB/s

Here we see a dramatic drop. While the SF-1500 and SF-1200 (3.0.1) based SSDs manage over 160MB/s, the standard SF-1200 (3.0.5) can only push 44.2MB/s. That's still much faster than a HDD, but it ends up being slower than both a C300 and Intel's X25-M G2.

4KB Random Read - MB/s

The performance limitation only applies to small file random writes. Random read performance remains unchanged with version 3.0.5 of the SF-1200 firmware.

Sequential Read/Write Speed Random Data Performance
POST A COMMENT

61 Comments

View All Comments

  • Look09 - Thursday, April 22, 2010 - link

    What happens when you use TrueCrypt to encrypt your OS.? Does it then random-write everything and indilinx is better? Does it make the Vertex 2 much better? Or no difference? Reply
  • Ryan Smith - Thursday, April 22, 2010 - link

    Encrypted data should look like random noise, and as a result should have very little compressibility. I haven't used TrueCrypt, but it's my understanding that it writes garbage data to whatever part of the hidden partition isn't in use, so the whole thing should largely be uncompressible and match our random data performance. Reply
  • semo - Thursday, April 22, 2010 - link

    I'm interested in encrypted testing also. These controllers are beginning to look like very fast consumer drives rather than enterprise (if the SATA interface wasn't a big enough hint already).

    I'm also wondering why are they getting a more substantial performance hit when writing compressed random 4k writes compared to 2MB sequential writes (74.4% vs 57.4%).

    Just to re instate, why are all these SSD makers coming out with SATA drives and calling them enterprise? AFAIK, Intel and Hitachi are working on an SAS SSD but I'm not aware of any other reasonable company doing the same (i'm totally ignoring what the military might have because costs there are nuts).
    Reply
  • Mugur - Thursday, April 22, 2010 - link

    ... Too bad that the price is still high so I'm very interested for the low-end 40 GB ones, but with good random 4k writes. I have 5 machines at home waiting for this upgrade as the boot drive. :-)

    Allow me to thank you, Anand, for your dedication and work.
    Reply
  • poeticjustic - Thursday, April 22, 2010 - link

    That was a really helpful and thorough article. Thank you for all this info.
    a few things that i wanted to ask.

    -On the random read/write speed page and specifically on the 4k aligned random write, we don't see anywhere the intel x25-E performance. Obviously that is because the testing of the x25-E was performed in the past, when this kind of test wasn't performed. Is it safe to assume that the performance of the x25-E would be quite close to that of the 4k random write test (around 48MB/s)?? Since we see that mostly the new controllers are mostly affected.

    -Furthermore, at least from what i've seen on eshops around in my country, the price of the z-drive m84 250GB and 500Gb has come closer to that of sata ssds. Still they are more expensive of course, but wouldn't it be a good idea to start seeing some z-drive performance on those tables for a direct comparison with the ssds and see whether the difference in their performance is bigger than the difference in their price? Just a thought.

    Making an extra remark on the performance of SF controller during already compressed data plus the the random data perormance table was a pretty important addition and something we should pay attention to.

    Thank you once again for a well built article.
    Reply
  • eaw999 - Thursday, April 22, 2010 - link

    correct, the x25-e, like -m, isn't affected drastically by alignment. you can expect slightly higher numbers with alignment, but nothing jaw-dropping. on the other hand, the x25-e positively rips at random writes at high queue depths, but that's not something you're likely to see often in desktop usage. Reply
  • krazyderek - Thursday, April 22, 2010 - link

    When does this ever happen? isn't that sentence an oxymorron, the only thing i can think of it if you were installing several applications at the same time? and it would depend on the applications being installed too, since i think i remember hearing that games are very sequential now Reply
  • krazyderek - Thursday, April 22, 2010 - link

    I DO see the importance when dealing with pre-compressed files like pictures and videos, i agree it would be nice to see a 0% 50% and 100% compressed figures to give people a good overview of things, but still, when would you see highly random sequential data? Reply
  • zdzichu - Thursday, April 22, 2010 - link

    Sequentially speaks about data access pattern, highly random is about data itself. It is perfect description of writing movie to a disk - you are storing byte-by-byte and each byte is probably different that preceeding ones. Reply
  • zdzichu - Thursday, April 22, 2010 - link

    I think you can skip non-aligned test in future. It is a corner case, not interesting at all. Reply

Log in

Don't have an account? Sign up now