
文档介绍NVMeVirt,一个基于软件的虚拟NVMe设备模拟器,及其在加速存储系统研发中的应用。
NVMeVirt通过实现对新型存储设备(如NVM SSD、KV-SSD和ZNS SSD等)的高级命令支持,促进了先进存储技术的发展。该模拟器不仅允许开发者在无需物理硬件的情况下测试和优化新功能,还能精确复制真实设备的性能,为用户提供了一个理想的开发平台。此外,NVMeVirt还被用于快速原型设计新的NVMe接口扩展、识别并改进存储栈中的软件瓶颈以及评估未来高性能存储设备的可扩展性等方面。
文中详细讨论了NVMeVirt的工作原理、它如何与操作系统和应用程序交互,以及其提供的多种核心功能,包括检查点性能恢复、深度学习推理性能以及针对特定工作负载的基准测试等。最后,文中提到了相关的研究论文和代码仓库链接,鼓励读者深入了解NVMeVirt及其在存储系统研究与开发中的潜力。


图中表格比较不同模拟器技术在NVMe 多个特性上的支持情况。

FEMU 简介
FEMU (Flash EMUlator) 是一种轻量级的存储设备仿真工具,专注于对闪存存储设备(如 SSD)进行功能和性能仿真。它能够在不需要真实硬件的情况下,通过软件模拟存储设备的行为,提供研究与开发环境,主要用于测试存储系统的性能与可靠性。
文章 后面将比较 FEMU 与 NVMeVirt 的模拟器性能,姑且先理解下FEMU。

NVMVirt 是一种基于软件的虚拟化 NVMe 设备,使用轻量级内核模块实现


模型 一个调度器(Dispatcher)+ 多个 I/O 线程(每个线程绑定到一个核心)。


NVM SSD 与传统SSD的比较
选择依据:


高级性能模型模拟了复杂的 SSD 内部结构,包括以下特性
右侧图示 SSD 写IO的模块交互,从 PCIe物理线路--写缓冲--FTL地址映射--Flash DIE 模块--Block--Page。


Optane 由于介质层优势,整体时延较SSD要明显低,性能更好。



Note
鹏弟看到这张图,最兴奋的不是Get到模拟器与真实设备的性能差距小,而是以下几点:

pgSQL 与 MariaDB 带宽性能差异分析

Note
这组数据,没看懂想表达什么。。。

列举了与 NVMe 存储技术相关的多种应用场景,重点是性能优化、扩展性分析和硬件架构改进。它展示了如何利用这些用例来推动高性能存储设备和相关技术的发展。
