White Papers

Caching Software Performance: SanDisk FlashSoft 4.0 for VMware

The objective of this paper is to observe performance gains that can be achieved in a Hyper-V virtualized computing environment with the application of a host-based SSD cache controlled using SanDisk® DAS Cache 1.3.1 software.

Introduction

The objective of this paper is to present performance gains that can be achieved in a virtualized computing environment with the application of a host-based SSD cache enabled by the FlashSoft® Software from SanDisk. VMware ESXi™ hypervisor software was installed on a host server, and multiple VMs were configured. FlashSoft software from SanDisk was used to provide a host-based cache to accelerate workloads running on the VMs. The benchmark program fio.exe was used to generate a synthetic workload and measure performance. For configurations with one, five, and ten VMs, read performance measured while using the host-based SSD cache was compared to that of baseline configurations using all-HDD storage with no caching.

 

Observations

Some key observations about this testing include:

  • Although the test compared performance of a configuration based on all-HDD storage versus a configuration employing a server-based SSD cache, the 24 HDDs were all dedicated to just a single host. In real-world use cases, multiple hosts normally share access to the underlying storage, so the HDD baseline used in this test actually provided superior performance than would typically be seen with shared HDD-based storage.
  • Testing the caching configuration on a single host for a read-intensive workload is representative of the performance benefits one would see in a multi-host environment. As the FlashSoft cache serves read requests at the host level (without any cache resources shared across nodes), the performance seen on one host is linearly scalable as more hosts are added to the cluster.
  • The FlashSoft software used in the testing was integrated with VMware vSphere® 6 through the vSphere APIs for IO Filtering (VAIO). Had any bottlenecks been present in the VAIO framework or the FlashSoft caching filter, scalability of storage IO performance (IOPS) would not have been seen as the number of VMs was increased from 1 to 5 to 10. Additionally, the nearly 200,000 IOPS observed in the 10 VM scenario could not have been achieved except with a highly efficient stack within the VAIO framework.
 

System Under Test

The servers under test were configured as follows:

Hardware

  • Server: Dell™ PowerEdge™ R730xd
    • CPU: 2x Intel® Xeon® E5-2699 @ 2.3GHz, 36 cores total
    • System Memory (RAM): 192GB
    • Storage Controllers:
  • Internal HDDs: Dell PERC H730 Mini RAID (embedded)
  • SSDs: Dell Express Flash NVMe XS1715 800GB PCIe SSD Controller
    • Internal HDDs: 1x300GB SAS 10K.6RPM, Seagate ST300MM0006
    • SSD (cache): 1x 400GB Dell PowerEdge Express NVMe PCIe 8GB/s
  • External Storage: Dell PowerVault™ MD3820f
    • 16Gb Fibre Channel (FC) interconnect
    • HDD Capacity: 24x 146GB SAS 6Gb/s 15KRPM, SeagateST9146853SS; RAID-10
    • Controller: single controller configured with Fibre Channel switch, 4GB cache
 

Virtual Machines

  • 2 vCPUs
  • 2GB virtual memory
  • 20GB virtual disk
 

Figure 1. Server configuration used for testing.

Software

  • Operating system software:
    • Host hypervisor: VMware ESXi 6.0.0, build-3380124 (U1B)
    • VMs: CentOS 6.5
  • Caching Software:
    • FlashSoft for VMware, driver version 4.0.0.63644 (built on Jan 13 2016 at 02:03:24); configured as write-through (read) cache
  • Benchmark program:
    • fio.exe version 2.1.10
 

Benchmark Tests

This study used the fio.exe (Flexible IO) benchmarking and workload simulation tool to generate a synthetic workload and measure performance. The following benchmark settings were used for all testing:

  • 100% random read distribution
  • 4KB block size with aligned transfers
  • Queue depth = 32
  • Threads = 8

Both IOPS and latency were measured for a random read workload. In tests with multiple VMs IOPS were summed for all VMs measured, while latency was averaged across all VMs measured.

 

Benchmark Script

The following contains the fio.exe script used for all testing. This script specifies an I/O block size of 4KB, 4KB block alignment, and a random read I/O pattern.

[global]
filename=/dev/disk/by-id/scsi-36000c299ce448d79a0601877915ae456
ioengine=libaio
exitall
norandommap
randrepeat=0
group_reporting
direct=1
ramp_time=5
runtime=120
time_based
iodepth=32
numjobs=8
#random_distribution=pareto:0.1

[jobs1]
name=density
readwrite=randread
bs=4k
ba=4k

Table 1. fio.exe script used for testing.

 

Test Procedure

The following testing procedures were used:

  • Install and configure the VMware ESXi hypervisor on the host server.
  • Configure the storage to be tested.
  • Install and configure the SSD and FlashSoft software.
  • Create the VMs and install CentOS 6.5 as the guest operating system.
  • Install the fio.exe benchmark software on the VMs.
  • Conduct benchmark test and record results for 1 VM:
    • Measure baseline performance with all-HDD storage and caching disabled.
    • Enable FlashSoft write-through caching and measure accelerated performance.
    • Compare baseline performance to accelerated performance.
  • Repeat the benchmark tests in Step 6 using 5 VMs. Ensure benchmark tests are run concurrently on all VMs being tested.
  • Repeat the benchmark tests in Step 6 using 10 VMs. Ensure benchmark tests are run concurrently on all VMs being tested.
 

Testing Considerations

In order to consistently measure the performance of the cached configurations, the cache was completely flushed after each individual test. In addition, the cache was “pre-conditioned” immediately before conducting each benchmark test using the same warmup workload.

When testing multiple VMs, performance was measured on all VMs concurrently.

 

Measured Results

The benchmark results for tests run with 1, 5, and 10 VMs. The baseline configuration used all-HDD storage with no caching to the SSD. The accelerated configuration used the SSD cache and FlashSoft software with write-through cache enabled. For tests with multiple VMs, read IOPS were summed across all VMs and read latency was averaged across all VMs.

 

  Total Read IOPS Average Read Latency (msec)
Test Baseline Accelerated Increase Baseline Accelerated Increase
1 VM 9,299 100,967 10.86x 27.526 2.535 10.86x
5 VMs 5,489 167,275 30.47x 232.906 8.000 29.11x
10 VMs 5,307 191,083 36.01x 481.091 16.058 29.96x

 

Figure 2 shows a graphical representation of the total read IOPS for the baseline and accelerated storage configurations. For tests with multiple VMs, read IOPS were summed across all VMs being tested.

 

Figure 3 shows a graphical representation of the average read latency comparison of the baseline and accelerated storage configurations. In tests with multiple VMs, latency values were averaged for all VMs.

 

Analysis / Conclusion

Data measured in these tests illustrate how FlashSoft software can significantly improve read performance for VMs running in a VMware ESXi environment as compared to traditional all-HDD backend storage. Total read performance increased 10.86 times for tests with 1 VM running with the SSD write-through cache enabled as compared to the baseline configuration with no caching. Tests with 5 and 10 VMs showed performance increases of over 30 times for the accelerated configuration as compared to the baseline configuration. Average read latency showed similar improvements, decreasing by 10.86 times for tests with 1 VM, and decreasing by over 29 times for tests with 5 and 10 VMs when the workload was accelerated with the SSD cache and FlashSoft software.

The tests described in this report were conducted with small data sets using the fio.exe benchmark-testing tool. Although the tests were constructed to simulate conditions typically encountered in the field and to generate data that reveal application performance, the tests can only be considered a demonstration of the capability of FlashSoft software—the data should not be regarded as the full performance potential of FlashSoft software. The actual performance of any caching solution is highly dependent upon the workload and the computing environment in which it is used.

 

Disclosures

Specifications are subject to change.

READY TO FLASH FORWARD?

Whether you’re a Fortune 500 or five person startup, SanDisk has solutions that will help you get the most out of your infrastructure.

VIA
EMAIL

Go ahead, ask us some questions and we'll get back to you with answers.

Let's Talk
800.578.6007

Don't wait, let's just talk now and start building the perfect flash solution.

Global Contact

Find contact information for offices all over the world.

SALES INQUIRIES

Whether you'd like to ask a few initial questions or are ready to discuss a SanDisk solution tailored to your organizations's needs, the SanDisk sales team is standing by to help.

We're happy to answer your questions, so please fill out the form below so we can get started. If you need to talk to the sales team immediately, please phone: 800.578.6007

Field cannot be empty.
Field cannot be empty.
Enter a valid email address.
Field can only contain numbers.
Field cannot be empty.
Field cannot be empty.
Field cannot be empty.
Field cannot be empty.
Field cannot be empty.
Field cannot be empty.

Please indicate your areas of interest:

You must choose an option.

Questions or comments:

You must choose an option.

Thank you. We have received your request.