FusionIO 720GB write performance

This is cross-posted from http://www.ssdperformanceblog.com/2011/07/fusionio-720gb-write-performance/

I’ve got a FusionIO card with 720GB capacity on my hands.

It came with a HP ProLiant DL380 G6 server. Interesting that this card is not listed on FusionIO’s products page, and neither I see such card in the list of available configurations on HP’s site. I guess this card comes as some customization option.

It seems to be a MLC card (I did not hear about FusionIO SLC cards with a capacity greater than 320GB) and cost is always an interesting question. On HP.com I can find a HP IO Accelerator (which is a re-branded FusionIO card) with a price of $15,000, so by simple proportion, 720GB should be around $16,500.

Now, as usually, my favorite benchmark is random write performance, and as we know, for FusionIO cards this may vary depending on the filesize.

I ran sysbench fileio random write benchmark on sizes from 50GiB to 650GiB, with a 40GiB-step (I use actually 64 files, with total size from 50 to 650GiB). Each run uses 8 IO threads, is 1 hour long and is made after formatting the card and creating a new filesystem. The operating system was Oracle Linux 6.1 with XFS as filesystem. Benchmarks scripts and raw results are available on Launchpad.

The results are a bit tricky to analyze, as for example, let’s take 490 GiB filesize:

As you may see, it takes some period for warming up, and after short drop, the result stabilizes. So I am going to take only measures after 1800 seconds (that is only half an hour). But even with that, the points are quite scattered around the 200-250 MiB/sec range, and it is hard to define a single metric. I came up with a “50-quantile” metric, also known as the median, which means the data point that separates 50% top results and 50% bottom results. In this case the “50-quantile ” is 217 MiB/sec, graphically this is:

Now we can have a better picture of how this card performs on throughput for each filesize, with the “50-quantile” (black) lines and the measurements spreading around them:

Some conclusions:

    • Top throughput is about 500MiB/sec, and it is the same as for FusionIO 320GB card. I guess this is top limit for FusionIO MLC cards (a wild guess is that this limit comes from a single controller on card).
    • Performance still drops steadily as we fill card.
    • There is no stable throughput which we may expect. Even for a particular size, the throughput spreads in a 50MiB range around the median.

More precisely, the numeric results obtained in my experiments (50% line) are:

Size, GiB 50% line throughput, MiB/sec
50 492.00
90 491.00
130 489.00
170 474.00
210 460.00
250 438.00
290 410.00
330 377.00
370 338.00
410 297.00
450 256.00
490 218.00
530 184.00
570 142.00
610 110.00
650 65.00

Follow @VadimTk