by Robert Tanner on July 29, 2013 in Solid-State Drives
Enthusiast SSDs may get all of the fame and glory, but it’s the value brands that always sell the most drives. As a relative newcomer that doesn’t rely on SandForce controllers like many other vendors do, can SanDisk’s Marvell-equipped Ultra Plus deliver that “Ultra” good value we’re looking for?
Originally developed by Intel – and since given to the open-source community – Iometer (pronounced “eyeawmeter”, like thermometer) is one of the best storage-testing applications available, for a couple of reasons. The first, and primary, is that it’s completely customizable, and if you have a specific workload you need to test a drive with, you can easily accomplish it here. Secondly, it bypasses the Windows disk subsystem entirely, meaning it bypasses the OS drivers and writes directly to the storage media. This has important implications, such as it means Windows 7 cannot correctly align Iometer to match the SSD or HDD sector alignment.
We have updated our test suite to the latest stable 1.10 rc1 build of Iometer, which was released in December, 2010. This version makes some changes to be aware of; specifically, it gives the option for three types of data sets used during testing. 2006 and earlier versions used a pseudo-random dataset for testing, while the 1.10 build will default to a “repeating bytes” test pattern. A full random test mode was also added. To avoid giving SandForce drives an unfair advantage (they rely on data compression to achieve their performance), we will stick to the pseudo-random test pattern for all of our testing.
We have configured Iometer for correct 4KB disk alignment using a single 8GB test file from within Windows, meaning they are acting as the host OS drive with no other drives in the system. We run individual random 4KB read and write tests at a queue depth of 3 and again at 32. Then we run the 128KB sequential read & write tests using a queue depth of 1. In addition, all drives are in a dirty state prior to testing – this means results will not be comparable to advertised manufacturer results. Our goal is to measure end-user performance under real-world conditions, and so our testing reflects typical SSD performance after it has been used for some length of time in a system. Each test pattern is run for 5 minutes to achieve an average result.
In addition, we have created three Iometer disk usage scenarios that should roughly approximate database, file server, and workstation usage patterns. These scenarios are run individually for 10 minutes each within an 8GB file on the drive, which is an unusually harsh scenario for any sort of SSD. Drives that are able to offer better sustained performance over time and those that favor certain file size accesses will do well here. All three tests are configured for a queue depth of 32 to show which drives are best capable of dealing with heavy workload scenarios.
“IOPS” is simply the measure of performance relative to a certain disk access size, specifically 4KB or 512 bytes, or any size desired. Typically with SSDs when speaking about IOPS it is referred to on the assumption of 4KB accesses. With this in mind, it is easy to convert between IOPS and MB/s. Iometer provides both types of results to us and for the sake of concise graphs, brevity, and easily understandable results, we have elected to use MB/s for the 4KB and 128KB tests. For reference: IOPS = (MBps Throughput / KB per IO) * 1024 and MBps = (IOPS * KB per IO) / 1024.
Iometer is a test that will push any SSD to its limits just to find out what they’re capable of. This makes it a particularly brutal test for value-model SSDs, but we certainly couldn’t prove that with Ultra Plus results.
The nCache solution is able to cache the majority of the random writes in this test which allows it to easily surpass every single SandForce model SSD while even trouncing the m4 as well. As our Iometer test is limited to a single 8GB test file, it is a safe bet that at least half of the 18GB of spare area is probably reserved just for the nCache solution.
The newer Marvell SS889175 controller is able to show off a bit in these tests. nCache is for caching writes, but the Ultra Plus ranks even better in both the sequential and random read portions of the tests – this is more than likely due to the newer controller paired with SanDisk’s custom firmware. Even then, it is surprising to see the Ultra Plus surpass a few high-end enthusiast-grade SSDs. Moving on to the individual scenario tests, the Ultra Plus slips a bit in the Database test, but places fourth out of our ten drives in both remaining workload simulations.