查看原文
其他

【忆芯技术分享】Endurance Group Management 在企业级方案中的应用

携手共赢 北京忆芯科技有限公司 2023-10-25


1

NVMe 2.0简介


NVMe通过PCIe直接连接到CPU内部,其本身具备高速(16Gb/s)、高并发(x4或x8 Lane并发)、低冗余(128Bit/130Bit编码)等特点。众所周知,高性能、低延迟是NVMe SSD的两大亮点,但在数据中心的存储应用中,QoS已经成为另一个衡量SSD产品好坏的指标。


随着NVMe协议不断演进和迭代,NVMe 2.0支持更多的功能,如ZNS、KV、Endurance Group Management。这些功能的引入,不仅直接或间接影响着产品的QoS,也让NVMe解决方案变得更快更简易。
NVMe 2.0规范中一个重要的功能:ZNS。目前ZNS已支持根据数据冷热程度进行分区,并将它们按顺序存储在固态硬盘内的独立区域,从而减少对存储数据的重写和重新排列,减少硬盘的写入放大系数(write amplification factor,WAF),整体提升硬盘的性能(QoS)和寿命。

图一:传统SSD与ZNS SSD数据存放位置差异(引自网络ZNS介绍)
NVMe 2.0 的另一个重要功能:KV(key-value)。KV命令集将允许应用程序使用KV对(key-value pairs)与硬盘控制器通信,而不是通过块地址。以免除键和逻辑区块之间不必要的转换表(translation tables),降低CPU计算负荷从而提升QoS。
Endurance Group Management同样是NVMe 2.0规范中的一项重要功能,通过这种全新的存储管理机制,可以灵活并动态地调节SSD配置,以实现动态容量管理和混合式NAND操作。以提升SSD的访问力度,并在整体上实现对存储设备更好的控制,提升整体QoS。
以上功能点的实现,都离不开SSD主控芯片和方案。本文章重点针对Endurance Group Management做一些分享。

2

Endurance Group Management定义


首先我们来看看NVMe对Endurance Group Management的定义(图二),主要定义了NVM Sets 和 Endurance Group。

图二:Endurance Group Management 定义(引自NVMe Endurance Group介绍)

3

NVM Sets 介绍


NVM Set是 NVM 的集合,与其他 NVM Set 中的 NVM 分开(逻辑上和潜在物理上)。一个或多个命名空间可以在 NVM Set 中创建,这些命名空间继承 NVM Set 的属性。命名空间完全包含在单个 NVM Set 中,并且不得跨越多个 NVM Set。
下图三 显示了三个 NVM Set 的示例。NVM Set A 包含三个命名空间(NS A1、NS A2 和 NS A3)。NVM Set B 包含两个命名空间(NS B1 和 NS B2)。NVM Set C 包含一个命名空间 (NS C1)。显示的每个 NVM Set还包含“Unallocated”区域,这些区域由尚未分配给命名空间的 NVM Set成。

图三:NVM Sets 示例(引自NVM Express Base Specification 2.0b)
协议定义了一系列感知NVM Set的管理命令子集,主机使用Identify命令确定存在的 NVM Sets 及其属性,NVM Sets属性主要包括:
  • 与NVM Set关联的标识符(an identifier associated with the NVM Set)
  • 写入NVM Set的最佳大小(the optimal size for writes to the NVM Set)
  • NVM Set总容量(the total capacity of the NVM Set)
  • NVM Set未分配容量(the unallocated capacity for the NVM Set)

(引自NVM Express Base Specification 2.0b)
每个 NVM Set都与一个 Endurance Group 相关联,而命名空间关联的 NVM Set 在 Identify Namespace data structure 中定义。当主机使用 Namespace Management 命令创建命名空间时,主机指定要在其中创建命名空间的 NVM Set 的 NVM Set Identifier。创建的命名空间从 NVM Set 继承属性(例如,写入到 NVM最佳大小)。



4

Endurance Group Management 介绍


Endurance Group可以在单个 NVM Set或跨 NVM Set 的集合中进行管理。每个 NVM Set 都与一个 Endurance Group 相关联。如果两个或更多 NVM Sets 具有相同的 Endurance Group Identifier,则Endurance由 NVM 子系统跨该 NVM Set 集合管理。如果只有一个 NVM Set 与特定的 Endurance Group Identifier 相关联,则 Endurance 在本地 NVM Set 管理。如图四所示,这样可以让GC、磨损均衡更精准操作。

图四:Endurance Group Management 示例(引自NVM Express Base Specification 2.0b)



5

Endurance Group 应用实例


在一个典型的业务模型中,既有写又有读,读写比例和随机性也不固定:图五不支持Endurance Group ;图六支持Endurance Group。我们分别观测两种模型下NS1的写Latency和QoS。最终效果:NS1写延迟降低,IOPS提高,QoS更稳定。

图五:不支持Endurance Group

图六:支持Endurance Group


忆芯科技作为国内较早布局高性能固态存储主控芯片研发的企业,一直致力于赋能高性能存储解决方案,时刻保持着新技术和方案的洞察力,今年下半年即将推出的高端企业级方案STAR2000E有望支持Endurance Group,针对不同的应用场景,划分独立的存储介质、NVM Sets,通过Group将各个单独的存储单元统一管理,以满足最优QoS的需求。






忆芯科技

核心职位火热招聘中

扫描二维码了解更多信息


推荐阅读

2022WAIC | 后摩尔时代,忆芯存算融合出圈了

9-2

忆芯受邀参展世界人工智能大会,自研存算融合主控加速赋能百业

9-1

【忆芯技术分享】大道至简:Chisel如何用高级语言进行硬件设计

8-31


忆芯科技


北京忆芯科技有限公司成立于2015年底,作为国内较早从事高性能固态硬盘主控芯片研发的企业,致力于成为赋能大数据应用的芯片全球领导者。经过7年的发展,公司已成长为国内领先的高端PCIe SSD主控芯片和成品盘供应商,为各行业的信息化发展提供高质量芯片级底层保障业务方向覆盖消费级、工业级和企业级主控芯片及解决方案。


忆芯科技核心成员具有多年研发经验和多项研发成果,拥有从底层算法到芯片设计,再到解决方案设计等多方面的丰富经验。坚持自主研发基础上,研发芯片产品拥有260余项自主知识产权,创新性地将处理器架构首次引入存储领域;现已成功完成4款高端消费级企业级SSD主控芯片流片,所研发的高性能低功耗NVMe SSD主控已量产出货。公司总部位于北京,在上海成都合肥厦门、深圳分别设有研发中心和客户技术支持中心。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存