When non-volatile flash memory-based solid-state drives (SSDs) were introduced, the protocol support included SAS/SATA. These interfaces were designed for hard disk drives (HDDs) and had more latency than was ideal for flash, but it made for easier integration of SSDs into enterprise storage systems and servers since the existing infrastructure was built around HDDs. SSDs were forced into the mold of HDD storage including the physical interface, host control interface and storage logic. Though PCIe flash drives became a step in the right direction, they lacked the ease of implementation that SAS/SATA SSDs have and do not fully expose the performance that NAND flash can offer.
NVMe (Non-Volatile Memory Express) is a host control interface that uses the PCIe bus for the storage and retrieval of data, and developed by an industry consortium to address inefficient storage protocols (AHCI/SCSI) that significantly hamper performance of NVMe media. It supports the 2.5” drive form factor for serviceability as well as firmware routines that address flash-specific processes to improve endurance and efficiency.
OCZ, an independent subsidiary of flash manufacturer Toshiba, is capitalizing on NVMe’s numerous advantages, with a new line of solid state drives, the Z-Drive 6000 Series, designed specifically for NVMe and for enterprise use cases.
What is NVMe?
NVMe is a scalable host controller interface designed from the ground up for non-volatile memory devices, including NAND flash storage. This interface uses the PCIe bus to fully exploit the performance capabilities of PCIe 3.0. NVMe employs a streamlined memory and optimized register interface plus a flattened software stack that consumes fewer CPU cycles for a given number of I/Os. This results in lower latency for each command executed and better performance.
NVMe supports 64,000 queues, each with up to 64,000 commands, compared to the single queue of 32 commands that the AHCI protocol supports. This expanded queue architecture, plus command priorities and arbitration, make NVMe ideal for highly parallel, multi-threaded operations, the kind of processing that’s becoming more common, especially in virtualized environments. NVMe also optimizes data placement in flash cells, reducing the amount of extraneous data movement that can occur in the wear leveling process, thereby minimizing write amplification and improving overall flash endurance.
OCZ’s Z-Drive 6000 SSD Series leverage the inherent advantages that NVMe provides over SAS/SATA, and even in existing PCIe flash devices. These new flash drives have a number of features tailored specifically for enterprise environments to improve availability, reduce operating costs and deliver more consistent performance in order to support Quality of Service (QoS) mandates that are becoming more common with IT management.
The Z-Drive 6000 SFF Series is a 2.5” x 15mm small form-factor, SSD that comes in 800GB, 1.6TB and 3.2TB usable capacities. These drives use Toshiba’s A19nm MLC NAND flash and connect to the PCIe bus (PCIe Gen3 x4) using the new U.2 (SFF-8639) connector instead of a traditional card-edge connector. This makes handling the SSDs much easier and reduces the physical or static damage that’s possible with traditional PCIe cards.
These drives are also hot-swappable, implementing an NVMe-enabled feature that simplifies installation and maintenance operations. There are a number of servers available with U.2 connectors and more vendors are expected to deliver NVMe-compliant (U.2 enabled) server designs in the coming months.
The Z-Drive 6000 provides up to 700K random read IOPS and 160K random write IOPS, using a 4KB block size. The rest of the performance specs are shown in Table 1 below. This is ~3-4x the random read and write performance of OCZ’s current fastest PCIe drive (Z-Drive 4500) and ~7-8x that of their fastest SATA SSD (Saber 1000). The Z-Drive 6000 also has excellent read/write latencies of 80µs and 25µs.
Table 1: Z-Drive 6000 and Z0Drive 6300 Features and Specifications
The specs for the Z-Drive 6300 SFF drive (see Table 1) are very similar to the Z-Drive 6000, with a few notable exceptions. It’s being released in the same capacities as the Z-Drive 6000, but a 6.4TB usable capacity model is expected in the second half of 2015. The Z-Drive 6300 uses Toshiba’s A19nm Enterprise MLC (eMLC) flash.
Hence the Z-Drive 6300 is guaranteed for three drive writes per day (DWPD). These endurance characteristics make the Z-Drive 6300 better suited for the higher write activity of mixed workloads. This is a primary target use case for this drive, in applications like backup and recovery, analytics, OLTP and OLAP databases and high-performance computing. In contrast, the Z-Drive 6000, which provides one DWPD, is designed for environments where write activity is lower, read-intensive use cases like media streaming, read caching and web services.
In CYQ4 2015, OCZ is scheduled to release the Z-Drive 6300 in an add-in card (AIC) form-factor. These half-height, half-length (HHHL) drives will feature the same usable capacities as the Z-Drive 6300 SFF Series and will also provide a 6.4TB usable capacity model.
Consistent performance is vital in storage devices because a few slow random operations from an otherwise fast drive can bottleneck an entire compute process. For this reason developers need more information than just how fast a device is, and want the confidence that it will deliver the same results repeatedly, over time.
It is common for drive performance specs to average thousands of read or write transactions for a given period of time. While this provides a general idea of SSD speed, it’s not the same as consistency, which is more about performance that users can depend on in a worst-case scenario. Instead of using an average or maximum performance level, consistency is a measure of the range of results delivered for a test, with a tighter range being more consistent.
One way is to perform QoS metrics that measure latency distribution and magnitude on a per I/O basis and evaluate whether I/Os are completing in time or whether the host is waiting for data. By using a relatively large set of storage transaction for a specific workload, response times for each I/O are collected during the test and arranged from lowest to highest latency, and then divided into percentiles (99.0%, 99.9%, 99.99%, etc.). The percentiles will indicate the confidence level that all I/Os will complete.
OCZ’s Z-Drive 6000 shows consistent performance using 4K read/write storage transactions at two different queue depths and arranged them from the lowest latency to the highest. The results are displayed in Table 2 below and show that 99.99% of the storage transactions during the test had latencies at or below the result reported and was considerably more consistent than either of the leading competitive drives tested.
Table 2: Performance Consistency
Dual-Port, Power Envelopes and Data Protection
OCZ will implement many other enterprise-level design features that make these drives ideal for the enterprise OEM market. This includes support for the NVMe dual-port feature that enables data-path redundancy and high availability, as well as user-selectable power modes that allow the drives to be run at 15W, 20W or 25W, reducing power consumption when maximum performance is not needed. There is also a feature to throttle the temperature in case of excessive heat and lowers performance to preserve the drive and data.
For end-to-end data protection, NVMe provides a Data Integrity Field (DIF), enabling host systems to initiate redundancy checks for transmitted read and write errors, reducing downtime and lowering operating costs. The Z-Drive 6000 and 6300 currently support Error Correction Codes (ECC) and Cyclic Redundancy Checks (CRC), plus Power Loss Protection (PLP) in support of in flight data.
One of the main reasons for the development of NVMe was to provide a standard interface by which vendors could base their designs, as traditional PCIe products have heretofore required a proprietary interface and associated drivers. The NVMe standard removes the need for OEMs to develop (and test) drivers for each specific device they produce, simplifying new product development cycles while shortening time-to-market. The Z-Drive 6000 and 6300 SSDs include drivers for Windows 8.1, Windows Server 2012 R2, Linux (since kernel 3.10), UNIX FreeBSD, Solaris and VMware, as well as UEFI and OFA open source drivers.
NVMe will make all SSDs better, but the way this new standard is implemented will determine what kinds of products come to market. All vendors start with the same ‘toolkit’, the NVMe standard, but it’s up to each company to apply those features to best leverage the significant advantages that NVMe provides. OCZ has appropriately focused on the enterprise end of the SSD market for its Z-Drive 6000 series products. These use cases need faster drives with the lowest latencies, characteristics that NVMe enables, as well as the consistent performance that these drives deliver.
Sponsored by OCZ Storage Solutions