SSDs, PERC cards, and Cache

I’ve always wondered how much of a performance benefit there is when using SSDs in a RAID config.  How fast in the NV cache on the PERC card?  Is there a major write performance difference with 4 SSDs in a RAID 10 vs. a single SSD?  What about reads?  Or random reads?  How about a different in time when cloning a VM?

To answer these questions and more, I used a single PowerEdge R630 server with a PERC H730P controller and 4 Samsung EVO 850 SSDs and changed one variable at a time (cache mode or RAID level).  Here’s how cache mode change is named:

  • Caching = Read-Ahead, Write-Back, Disk Cache Policy Enabled
  • Typical Caching = Read-Ahead, Write-Through, Disk Cache Policy Enabled
  • No Read caching = No Read Ahead, Write-Through, Disk Cache Policy Enabled
  • Minimal caching = No Read Ahead, Write-Through, Disk Cache Policy disabled

Different RAID levels included:

  • RAID 0 – 4 drives
  • RAID 10 – 4 drives
  • RAID 0 – 1 drive

The speed tests used for this are:

  • Anvil
  • HD Tune
  • Performance Test 8
  • CrystalDiskMark
  • VMware (VMDK clone time)

And here are the results (scroll to the right to see it all):

Test RAID 0 – Caching RAID 0 – Typical Caching RAID 0 – No Read-Caching RAID 0 – Minimal caching RAID 10 – Caching RAID 10 – Typical Caching RAID 10 – No Read-Caching RAID 10 – Minimal caching Single – Caching Single – Minimal caching
CrystalDisk – Sequential Read Q32 5721 2066 2054 2066 5713 2003 2003 1885 5723 547.2
CrystalDisk – 4K Q32 Read 467.2 530.9 675.1 687.7 454.5 515.1 598.9 580.8 462.6 275.9
CrystalDisk – Sequential Read 3555 1634 1629 1635 3533 1071 1073 821.9 3117 520.3
CrystalDisk – 4K Read 109.7 32.87 35.65 35.32 109.7 37.54 38.21 32.76 109.3 42.13
CrystalDisk – Sequential Write Q32 6833 321.7 322 316.3 6836 245.2 244.8 110.3 6836 223.8
CrystalDisk – 4K Q32 Write 463.4 19.44 20.02 20.1 135.7 15.97 15.91 10.29 451.5 22.87
CrystalDisk – Sequential Write 4056 84.94 85.77 84.52 363.5 59.98 39.64 33.97 3902 139.9
CrystalDisk – 4K Write 104.4 1.129 1.14 1.129 30.21 0.633 0.621 0.7 104.7 1.178
HD Tune – Minimum Read 978.5 945.3 359.4 15.5 958.1 820.8 376 374.3 339.4 357.7
HD Tune – Maximum Read 3083.2 3095.9 3092 3041.4 3093.1 3135.8 3044.7 3114.2 3009.7 3041
HD Tune – Average Read 1645.9 1654 1273.2 1262.8 1638.6 1639.1 1267 1282.5 1198.9 1193
HD Tune – Access Time Read 0.086 0.087 0.081 0.081 0.083 0.086 0.085 0.082 0.085 0.082
HD Tune – Burst Rate Read 212.9 213.7 221.6 220.7 226.2 213 226.7 279.6 224.9 236.5
HD Tune – 4K Read 43.351 43.352 45.639 44.274 44.622 41.534 44.244 44.247 43.074 25.992
PT8 – Sequential Read 2826 2170 1210 1040 2780 1531 1393 1349 2749 497
PT8 – Sequential Write 2714 77 82.7 83.4 2774 25.3 27.1 32.4 2618 74.1
PT8 – Random Seek + RW 2461 132.1 100.4 110.9 2540 50.1 53.6 50.5 2361 110.9
Anvil – Sequential Read 4 MB 3282.05 1726.81 1641.03 1682.83 3864.15 1381.92 1458.69 1172.3 4231.4 501.1
Anvil – Sequential Read 4K 72.88 29.42 33.36 33.67 77.58 30.77 29.77 27.35 88.56 35.47
Anvil – Read 4K QD4 212.61 100.33 108.73 107.13 233.48 104.27 105.05 89.38 244.01 105.43
Anvil – Read 4K QD16 370.83 340.83 386.39 386.21 374.12 309.96 342.07 312.05 387.46 249.09
Anvil – Read 32K 423.15 163.03 168.86 167.95 606.15 194.05 193.05 168.3 637.76 165.75
Anvil – Read 128K 1091.11 428 434.64 435.97 1495.05 512.5 513.79 431.12 1549.34 309.36
Anvil – Sequential Write 4 MB 1261.08 149.53 190.26 201.97 713.09 149.88 140.85 69.24 434.82 176.46
Anvil – Write 4K 93 1.08 1.07 1.07 96.04 0.99 0.99 0.58 97.19 1.11
Anvil – Write 4K QD4 192.62 3.18 3.19 3.2 230.23 2.45 2.44 1.42 232.22 2.55
Anvil – Write 4K QD16 283.68 9.93 10.05 10.1 396.82 8.09 8.12 4.09 398.49 9.31
VMDK Clone Time (seconds) 81 187 184 186 250 636 629 591 411 442

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s