After my previous benchmarks of FusionIO 160GB SLC card, FusionIO team sent me for the tests another card, FusionIO 320GB MLC. I should say I really appreciate an opportunity to play with this card and with combination of two cards.
This card is also not cheap, the price I can find on dell.com is $6,829.99, which is almost the same as for 160GB card, but with doubled space,
and which gives me 21$/GB for 100% formatted card, and 29$/GB for card with 75% of space allocated. Effect of 25% reserved space you will see in the results.
The full numbers are available on our Wiki benchmarks page, couple words about benchmarks.
I did sysbench fileio runs on 100% space allocated card and on 75% space allocated (240GB of
available disk space), and on 32GB and 100GB filesizes. After that I took two cards into software RAID0, and tried 100GB filesize in this configuration. Block size is 16KB in all cases.
The results for random write is here:
(Results are in MB/s (more is better) for random write test, pagesize 16KB )
|threads||32GB filesize, 100% space formatted||32GB filesize, 75% space formatted||32GB filesize, SLC||100GB filesize, 75% space formatted||100GB filesize, RAID0 over 2 cards|
or in chart form:
(if legend is unreadable, it is:
- 32GB filesize, 100% space formatted
- 32GB filesize, 75% space formatted
- 100GB filesize, 75% space formatted
- 100GB filesize, RAID0 over 2 cards
I hope Google Docs will fix the issue with font for the legend sometime
So there some numbers to consider:
- With 25% reserved space you can get almost 3x throughput even with
small enough files
- SLC card gives about 15-20% more in throughput
- With 25% reserved space, I was able to get 700 MB/s in sequential reads ( 400 MB/s in random reads) and 500 MB/s for random writes.
- 95% response time in most cases are impressive, very often it is < 1ms (in hundreds microseconds range)
- Sequential writes still behave strange, dropping throughput with increased concurrency
- To get most from card you need multi-threaded IO (4-16 threads)
- With RAID0 you can get doubled space with very interesting numbers, 750 MB/s in random reads and 800 MB/s in random writes ( and 1.2GB/s in sequential reads)
Now having these cards and numbers, I am going to benchmark MySQL with FusionIO as storage.