ZNS: Avoiding the Block Interface Tax for Flash-based SSDs
USENIX Annual Technical Conference (USENIX 2021), July 14-16, 2021, Virtual Event.
Matias Bjørling*, Abutalib Aghayev^, Hans Holmberg*, Aravind Ramesh*, Damien Le Moal*, Gregory R. Ganger†, George Amvrosiadis†
* Western Digital
† Carnegie Mellon University
^ Pennsylvania State University
The Zoned Namespace (ZNS) interface represents a new division of functionality between host software and flash-based SSDs. Current flash-based SSDs maintain the decades-old block interface, which comes at substantial expense in terms of capacity over-provisioning, DRAM for page mapping tables, garbage collection overheads, and host software complexity attempting to mitigate garbage collection. ZNS offers shelter from this ever-rising block interface tax.
This paper describes the ZNS interface and explains how it affects both SSD hardware/firmware and host software. By exposing flash erase block boundaries and write-ordering rules, the ZNS interface requires the host software to address these issues while continuing to manage media reliability within the SSD. We describe how storage software can be specialized to the semantics of the ZNS interface, often resulting in significant efficiency benefits. We show the work required to enable support for ZNS SSDs, and show how modified versions of f2fs and RocksDB take advantage of a ZNS SSD to achieve higher throughput and lower tail latency as compared to running on a block-interface SSD with identical physical hardware. For example, we find that the 99.9th-percentile random-read latency for our zone-specialized RocksDB is at least 2–4x lower on a ZNS SSD compared to a blockinterface SSD, and the write throughput is 2x higher.
FULL PAPER: pdf