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 |