We’ve talked about how we can use SSD cache to reduce latency and accelerate transfer speeds. We’ve also explained the differences between consumer and enterprise SSDs, and why for sustained performance reasons we suggest the latter.
Consumer and enterprise SSDs are two broad categories that encompass a wide range of performance profiles. Due to differences in how vendors test and rate their products, buying based off advertised numbers is not enough. In today’s post, we’ll explore how NAND types affect performance significantly, and why this should matter to your next purchasing decision.
NAND flash types
NAND flash memory data is represented as digital signals (bits) and stored on NAND flash memory cells. The number of bits stored on a cell determines the type of flash memory used. Single-level cell (SLC) flash memory contains one bit per cell. Multi-level cell (MLC) doubles the capacity with two bits per cell. Triple-level cell (TLC) contains three bits per cell, while quad-level cell (QLC) contains four bits per cell allowing for four times the capacity of SLC flash memory.
Since SSDs hit the market, capacities have grown larger and larger. Current industry trends are to reduce costs while increasing storage capacity. This has led to the development of denser memory cells while slowly approaching (not yet there) the cost of traditional hard drives.
The pursuit of cheaper and larger drives has caused the decline of SLC and MLC-based SSDs. TLC is now mainstream and holds the largest market share. QLC is still relatively new, but we expect its low costs will draw in buyers, especially since it is often pitched as an HDD replacement.
NAND memory cells have only a finite number of program-erase (P/E) cycles (write cycles) before they wear out. Going into details is outside the scope of this post, so just know that higher density cells have less endurance than low-density ones, e.g. MLC will usually last longer than TLC.
While you can generally follow that MLC will be faster than TLC, and TLC will be faster than QLC, new SSDs contain multiple optimization methods that help cover up or negate the shortcomings of slower NAND. A great example of this is “SLC-caching”, where unused areas of a drive will act as pseudo-SLC NAND. This allows for very good performance for shorter, burst-type workloads, as is often the case for most PCs and client-computing environments. This can be clearly seen in our previous consumer and enterprise SSD article.
There’s a drive for that
Unlike the mature HDD market, when shopping for an SSD you will find enough makes and models to give you choice anxiety. What we’ll be looking at today is that while consumer TLC and even QLC drives often claim impressive performance figures on the surface, when examined under practical situations, the true performance profiles of these drives are revealed.
We picked two commonly available drives for each target-segment group, benchmarking six drives in total.
We’re using CrystalDiskMark, a popular utility to measure drive performance. Higher queue depths (Q) and threads (T) typically result in higher performance, but most consumer workloads involve only low queue depths. IT infrastructure involving virtual machines and DB storage will usually see higher queue depths and threads.
For file transfer tests, we’ll use AJA System Test, a tool designed primarily for content creators to verify their storage systems are able to support ingesting high-resolution streams. We set it to write a 64GB file to the system and then read it back. This is still a light workload but will be representative of users moving a large file around.
Across short, burst-type tests, all drive groups did very well, as expected for these types of synthetic benchmarks. Based on the performance numbers here, you’ll be forgiven if you concluded that you’ll see no differences in real-world usage. Ample SLC-cache sizes mean the even slower QLC drives perform great.
Performance at 65% capacity
The previous tests were conducted while the drives were empty. That gave drives with dynamic SLC-caching lots of room to work with. We filled each drive to 65%, gave them a few minutes to rest, then continued using AJA System Test to generate the same 64GB write then read workload.
Compared to when completely empty, our enterprise drives performed within the margin of error. Consumer TLC drives dropped off a bit in read performance, while still maintaining good write speeds, nothing noticeable in regular day-to-day usage. It goes without saying that the QLC group’s performance regression here is significant.
Full drive test
We used a whole-drive fill test to obtain the steady-state performance of the drives. This test is also indicative of drive workloads when used as an SSD cache on a busy NAS, as they’ll continuously be filled with recently accessed data. This test will exhaust any SLC-caching mechanisms on the drive as it does not give it any time to recover.
In the graphs, the horizontal axis represents the percentage of storage capacity written to. The first one is the raw speed average for our groups. The second shows the speed as a percentage of the maximum in this test. As expected, drives meant for enterprise environments shine the most here. Consumer TLC drives started out fast, but quickly crashed as they used up their caches. The QLC drives are actually configured with fairly large caches, enabling them to stay fast for longer. However, the reason behind this is to mask the absolutely poor write speeds once the cache is full and the NAND is written to directly. Here, we’re seeing worse sequential write speeds than HDDs.
On the other hand, even though the enterprise drives we used today are mostly entry-level models, and rated for read-intensive workloads, they are still able to provide stable sustained performance. Higher-end (pricier) models usually support higher write speeds and DWPD ratings.
Wrapping things up
It is always important to thoroughly check the advertised performance figures for SSDs. Testing methods and conditions are different between manufacturers, and for consumer drives, are often only in burst-type workloads. Even so, consumer SDDs are still cost-effective upgrades to considerably speed up your PC or NAS storage compared to HDDs. However, take note that once you start applying heavier and longer workloads to them, their performance will drop, sometimes significantly.
QLC drives are great for their intended purposes, that is, low-cost drives to replace HDDs in read-intensive workloads. While peak performance can rival even high-end TLC-based drives, their performance in steady-state situations leaves a lot to be desired. Unlike with the quick adoption of TLC NAND in both high-end consumer and enterprise drives, unless steady-state QLC performance improves significantly, we don’t see them becoming a TLC replacement anytime soon.
For usage in a NAS, you can see why we have always advocated using only enterprise-grade drives. In addition to being rated for higher endurance, performance consistency is extremely important, especially when you are providing storage to VMs and other critical infrastructure. There is simply no room for variable performance based on workload.