In this blog post, we will discuss MySQL performance on eXFlash DIMMs. Earlier we measured the IO performance of these storage devices with sysbench fileio.
Environment
The benchmarking environment was the same as the one we did sysbench fileio in.
CPU: 2x Intel Xeon E5-2690 (hyper threading enabled)
FusionIO driver version: 3.2.6 build 1212
Operating system: CentOS 6.5
Kernel version: 2.6.32-431.el6.x86_64
In this case, we used a separate machine for testing which had a 10G ethernet connection to this server. This server executed sysbench. The client was not the bottleneck in this case. The environment is described in greater detail at the end of the blog post.
Sysbench OLTP write workload
The graph shows throughput for sysbench OLTP, we will examine properties only for the dark areas of this graph: which is the read/write case for high concurrency.
Each table in the following sections has the following columns
column | explanation |
---|---|
storage | The device that was used for the measurement. |
threads | The number of sysbench client threads were used in the benchmark. |
ro_rw | Read-only or read-write. In the whitepaper you can find detailed information about read-only data as well. |
sd | The standard deviation of the metric in question. |
mean | The mean of the metric in question. |
95thpct | The 95th percentile of the metric in question (the maximum without the highest 5 percent of the samples). |
max | The maximum of the metric in question. |
Sysbench OLTP throughput
storage | threads | ro_rw | sd | mean | 95thpct | max |
---|---|---|---|---|---|---|
eXFlash DIMM_4 | 128 | rw | 714.09605 | 5996.5105 | 7172.0725 | 7674.87 |
eXFlash DIMM_4 | 256 | rw | 470.95410 | 6162.4271 | 6673.0205 | 7467.99 |
eXFlash DIMM_8 | 128 | rw | 195.57857 | 7140.5038 | 7493.4780 | 7723.13 |
eXFlash DIMM_8 | 256 | rw | 173.51373 | 6498.1460 | 6736.1710 | 7490.95 |
fio | 128 | rw | 588.14282 | 1855.4304 | 2280.2780 | 7179.95 |
fio | 256 | rw | 599.88510 | 2187.5271 | 2584.1995 | 7467.13 |
Going from 4 to 8 eXFlash DIMMs will mostly mean more consistent throughput. The mean throughput is significantly higher in case of 8 DIMMs used, but the 95th percentile and the maximum values are not much different (the difference in standard deviation also shows this). The reason they are not much different is that these benchmark are CPU bound (check CPU idle time table later in this post or the graphs in the whitepaper). The PCI-E flash drive on the other hand can do less than half of the throughput of the eXFlash DIMMs (the most relevant is comparing the 95th percentile value).
Sysbench OLTP response time
storage | threads | ro_rw | sd | mean | 95thpct | max |
---|---|---|---|---|---|---|
eXFlash DIMM_4 | 128 | rw | 4.4187784 | 37.931489 | 44.2600 | 64.54 |
eXFlash DIMM_4 | 256 | rw | 9.6642741 | 90.789317 | 109.0450 | 176.45 |
eXFlash DIMM_8 | 128 | rw | 2.1004085 | 28.796017 | 32.1600 | 67.10 |
eXFlash DIMM_8 | 256 | rw | 5.5932572 | 94.060628 | 101.6300 | 121.92 |
fio | 128 | rw | 51.2343587 | 138.052150 | 203.1160 | 766.11 |
fio | 256 | rw | 72.9901355 | 304.851844 | 392.7660 | 862.00 |
The 95th percentile response time for the eXFlash DIMM’s case are less than 1/4 compared to the PCI-E flash device.
CPU idle percentage
storage | threads | ro_rw | sd | mean | 95thpct | max |
---|---|---|---|---|---|---|
eXFlash DIMM_4 | 128 | rw | 1.62846674 | 3.3683857 | 6.2600 | 22.18 |
eXFlash DIMM_4 | 256 | rw | 1.06980095 | 2.2930634 | 3.9170 | 26.37 |
eXFlash DIMM_8 | 128 | rw | 0.42987637 | 0.8553543 | 1.2900 | 15.28 |
eXFlash DIMM_8 | 256 | rw | 1.32328435 | 4.4861795 | 6.7100 | 9.40 |
fio | 128 | rw | 4.21156996 | 26.1278994 | 31.5020 | 55.49 |
fio | 256 | rw | 5.49489852 | 19.3123639 | 27.6715 | 47.34 |
The percentage of CPU being idle shows that the performance bottleneck in this benchmark was the CPU in case of eXFlash DIMMs (both with 4 and 8 DIMMs, this is why we didn’t see a substantial throughput difference between the 4 and the 8 DIMM setup). However, for the PCI-E flash, the storage device itself was the bottleneck.
If you are interested in more details, download the free white paper which contains the full analysis of sysbench OLTP and linkbench benchmarks.
The post MySQL benchmarks on eXFlash DIMMs appeared first on MySQL Performance Blog.