The SLC cache size of several Best SSDs
When you copy a lot of files or very large files (>10 GB) to a new SSD, you might have noticed that write speeds on your SSD start out at full speed and then drop considerably. The underlying reason is that modern drives have caches that soak up write bursts to improve performance. In the fairly uncommon scenario of writing data that's too big to fit into these caches, the drive will have to write data directly to flash, and it will probably juggle some out of its write cache at the same time, which can result in a significant loss of write speed. Newer TLC drives use part of their capacity in SLC mode for increased performance. This test can reveal the size of that SLC cache.
Testing on this page looks at exactly that scenario. We write a sequential stream of 1 MB blocks to the drive in a single thread, like a typical file-copy operation would do, and measure write speeds twice a second. The drive is fully erased before testing to ensure any caches are emptied. Please note that this test writes a lot of data in a very short time, which is something most consumers will never do.
The Samsung 980Pro 1TB NVMe M.2 SSD used in this test. Write speed starts out at 4 GB/s and is sustained until 113 GB have been written to the drive. At this point, the SLC cache is full, and the drive will start flushing SLC back to TLC, which significantly affects write rates. You're still getting 1.5 GB/s in this state, which is better than most other TLC drives. What's a bit surprising is that the fuller the drive gets, the higher the write speed. Any pause in write activity, even for a second, will give the drive time to free up some SLC cache, so full write rates are restored after some idle time even if the drive is partially filled.
On average, we saw a write speed of 1.9 GB/s when filling the whole disk, which is the best result of any TLC-based SSD we've ever tested. It's still 300 MB/s lower than what last-generation's Samsung 970 Pro offered because of its use of MLC flash.
Sustained Write Performance and Cache Recovery
Official write specifications are only part of the performance picture. Most SSDs implement a write cache, a fast area of (usually) pseudo-SLC programmed flash that absorbs incoming data. Sustained write speeds can suffer tremendously once the workload spills outside of the cache and into the "native" TLC or QLC flash. We use iometer to hammer the SSD with sequential writes for 15 minutes to measure both the size of the write cache and performance after the cache is saturated. We also monitor cache recovery via multiple idle rounds.
We usually test the SLC cache, or in this case, TurboWrite, by writing to the SSD with a 1MB block size. However, because of the performance scaling issues present in our synthetic testing, we adjusted our settings to a 128KB block size here. At 2TB, the Samsung 980 Pro’s cache measured 238GB, writing at a speed of roughly 5.1GBps until full. After the TurboWrtite cache filled, write speeds degraded to approximately 1.5 GBps, but then ramped up to 2GBps, averaging 1.7 GBps until the device filled.
While it doesn’t have a massive SLC cache like the Sabrent or WD drives, the Samsung 980 Pro’s worst-case write performance was very good. But, when it came to cache recovery, the Samsung SSD recovered only its static SLC cache within our 30-min idle window. In contrast, drives like the WD Black SN850 and Sabrent Rocket 4 Plus consistently recovered tens to hundreds of gigabytes of their cache.
Related Articles: What are QLC, DRAM Cache and SLC Cache?