论文标题
了解NVME划分命名空间(ZNS)Flash SSD存储设备
Understanding NVMe Zoned Namespace (ZNS) Flash SSD Storage Devices
论文作者
论文摘要
NVME 2.0规范中NVME划分名称空间(ZNS)的标准化为存储设备提供了独特的新添加。与传统的SSD不同,在设备内部的闪光灯翻译层(FTL)后面隐藏了闪存媒体管理特质,ZNS设备将有关数据放置和垃圾收集的某些操作从设备到主机。这使主机可以实现更最佳的数据放置和可预测的垃圾收集开销,以及较低的设备写入放大。因此,增加了闪光介质的寿命。结果,ZNS设备在研究界引起了极大的关注。 但是,使用当前的软件堆栈,有许多方法将ZNS设备集成到主机系统中。在这项工作中,我们开始系统地分析集成选项,报告Linux内核中ZNS设备的当前软件支持,并提供一组初始的性能测量值。我们的主要发现表明,需要较大的I/O尺寸才能使ZNS设备带宽饱和,并且I/O调度程序的配置可以提供依赖工作负载的性能提高,需要仔细考虑ZNS集成和配置,根据应用程序工作负载及其访问模式。我们的数据集和代码可从https://github.com/nicktehrany/zns-study获得。
The standardization of NVMe Zoned Namespaces (ZNS) in the NVMe 2.0 specification presents a unique new addition to storage devices. Unlike traditional SSDs, where the flash media management idiosyncrasies are hidden behind a flash translation layer (FTL) inside the device, ZNS devices push certain operations regarding data placement and garbage collection out from the device to the host. This allows the host to achieve more optimal data placement and predictable garbage collection overheads, along with lower device write amplification. Thus, additionally increasing flash media lifetime. As a result, ZNS devices are gaining significant attention in the research community. However, with the current software stack there are numerous ways of integrating ZNS devices into a host system. In this work, we begin to systematically analyze the integration options, report on the current software support for ZNS devices in the Linux Kernel, and provide an initial set of performance measurements. Our main findings show that larger I/O sizes are required to saturate the ZNS device bandwidth, and configuration of the I/O scheduler can provide workload dependent performance gains, requiring careful consideration of ZNS integration and configuration depending on the application workload and its access patterns. Our dataset and code are available at https: //github.com/nicktehrany/ZNS-Study.