November 27, 2014

Write performance on Virident tachIOn card

This is crosspost from http://www.percona.com/blog/.

Disclaimer: The benchmarks were done as part of our consulting practice, but this post is totally independent and fully reflects our opinion.

One of the biggest problems with solid state drives is that write performance may drop significantly with decreasing free space. I wrote about this before (http://www.percona.com/blog/2010/07/17/ssd-free-space-and-write-performance/), using a
FusionIO 320GB Duo card as the example. In that case, when space utilization increased from 100GB to 200GB, the write performance
dropped 2.6 times.

In this regard, Virident claims that tachIOn cards provide “Sustained, predictable random IOPS – Best in the Industry”. Virident generously provided me model 400GB, and I ran the benchmark using the
same methodology as in my experiment with FusionIO, which was stripped for performance. Also using my script, Virident made runs on tachIOn 200GB and 800GB model cards and shared numbers with me ( to be clear I can certify only numbers for 400GB card, but I do not have reasons to question the numbers for 200GB and 800GB, as they corresponding to my results).

The benchmarks was done on Cisco UCS C250 box and raw results are on Benchmarks Wiki



Visually, the drop is not as drastic as it was in the case using FusionIO, but let’s get some numbers.
I am going to take the performance numbers at the points where the available space of the card is 1/3, 1/2, and 2/3 filled, as well as at the point where the card is full. Then I will compute the ratio of each of those IOS numbers to the IOS at the 1/3 point.

**For the 400GB tachIOn card:**

sizeThroughput, MiB/secratio
130959.17
200849.581.13
260685.181.40
360417.332.29

That is, at the 2/3 point, the 400GB card is slower by 29% than at the 1/3 point, and at full capacity it is slower by 57%.

Observations from looking at the graph:

* You can also see the card never goes below 400MB/sec, even when working at full capacity. This characteristic (i.e., high throughput at full capacity) is very important to know if you are looking to use an SSD card as a cache layer (say, with FlashCache), as, usually for caching, you will try to fill all available space.
* The ratio between the 1/3 capacity point and full capacity point is much smaller compared with FusionIO Duo (without additional spare capacity reservation).
* Also, looking at the graphs for Virident and comparing with the graphs for FusionIO, one might be tempted to say that Virident just has a lot of space reserved internally which is not exposed to the end user, and this is what they use to guarantee a high level of performance. I checked with Virident and they tell me that this is not the case. Actually from diagnostic info on Wiki page you can see: tachIOn0: 0x8000000000 bytes (512 GB), which I assume total installed memory. Regardless, it is not a point to worry about. For pricing, Virident defines GB as the capacity available for end users. So, a competitive $/GB level is maintained, and it does not matter how much space is reserved internally.

Now it would be interesting to compare results with results for FusionIO. As cards have different capacity I made graph which shows
throughput vs percentage of used capacity for both cards, FusionIO 320GB Duo SLC and Virident 400GB SLC

Util %Duo 320GBtachIOn 400GBadvantage percent
20%1,09599090%
30%1,00698097%
40%825964117%
50%613872142%
60%397783197%
70%308669217%
80%237611258%
90%117502429%
100%99417421%

In conclusion:
* On single Virident card I see random write throughput close or over 1GB/sec in with low space usage and it is comparable with throughput I’ve got on stripped FusionIO card. I assume Virident maintain good level of parallelism internally.
* Virident card maintains very good throughput level in close to full capacity mode, and that means you do not need to worry ( or worry less) about space reservation or formatting card with less space.

About Vadim Tkachenko

Vadim leads Percona's development group, which produces Percona Clould Tools, the Percona Server, Percona XraDB Cluster and Percona XtraBackup. He is an expert in solid-state storage, and has helped many hardware and software providers succeed in the MySQL market.

Comments

  1. Andy says:

    How much is the Virident 400GB card compared to FusionIO?

  2. Vadim says:

    Andy,

    Do you mean price ?

  3. Andy says:

    Yes Vadim I meant price.

  4. Hi Andy,

    The Virident tachIOn card is comparable in list price if you look at $/GB. It is much cheaper if you look at $/Usable GB (as shown by this blog)
    If you are interested in a quote please email us at sales@virident.com

    thanks
    Shirish

  5. Vadim says:

    Andy,

    In my previous post
    http://www.mysqlperformanceblog.com/2010/06/15/virident-tachion-new-player-on-flash-pci-e-cards-market/
    the price estimation is 13600$ for tachIOn 400GB card.

    For FusionIO 320GB SLC Duo on dell.com http://dell.to/hse3pt I see price $17,486.99

  6. John C. says:

    Vadim, Andy,

    The 320GB SLC Duo is also available OEM from HP with a LIST price of $13,999.00.
    http://h30094.www3.hp.com/product/sku/10243659/mfg_partno/600281-B21

    Also, your Fusion-io results were from an older E5530 2.4Ghz system (fewer cores, threads and smaller cache, only 24GB RAM) but the Virident numbers came from a newer and faster X5670 2.93Ghz system. Doing a direct comparison can be misleading. Also, there are newer drivers and firmware for the Fusion-io card that will improve its performance.

    John

  7. Vadim says:

    John,

    I think direct comparison makes sense if we look on relative numbers, i.e. performance drop comparing
    to 1/3, 1/2, 2/3, 100% of full capacity.

    Thank you for pointing prices, that’s much cheaper than from dell.com

  8. vishnu rao says:

    hi

    we are in the process of moving to virident cards (for our mysql db) and its totally new territory for us. any tips / general guidelines to be followed during the move.

    with regards,
    ch Vishnu

  9. Vadim says:
  10. Will says:

    Say we previously used the whole disk for a partition in Linux, then delete the partition,and over-provision with a smaller partition (say only using 75% of disk), do you know if the Linux ‘gdisk’ command will issue a TRIM command to free up the remaining 25% to the SSD controller?

    I guess all the background-rearranging that SSD controllers do needs plenty of free space. I believe that’s why enterprise SSDs are over-provisioned transparently, but vanilla ones are not, or only minimally over-provisioned.

Speak Your Mind

*