NVMe TP4146: Flexible-Data-Placement-Mode-FDP分析和思考

TP链接

TP原文:TP4146 Flexible Data Placement 2022.11.30 Ratified.pdf

https://nvmexpress.org/wp-content/uploads/Hyperscale-Innovation-Flexible-Data-Placement-Mode-FDP.pdf

TP的目标

Google and Meta提的这个TP看起来目标很有野心,期望把SSD盘的的写放大WA能够降低到1。

TP分析

TP增加了一个Reclaim Group的概念,主要是想通过host侧的应用对数据进行识别,在写入SSD时可以分类写入不同的空间,在数据废弃后,以Reclaim Group为粒度进行擦除回收SSD的NAND空间。以此达到垃圾的数据集中起来回收的效果,减少了对NAND FALSH的block做GC过程中对有效数据的搬移操作,提高效率,降低写放大WA。

按照这个思路,SSD需要重构FTL表映射的架构,不再是以L4K、L8K等方式映射,而是要至少以single block为粒度分配空间,与新增的Reclaim Group对应,这样才能将生命周期类似的一类数据写入相同的Reclaim Group-->block Group,以达到同时擦除的目的。

该思路其实和open channel和多流有类似之处。

与open channel相比,Host的应用和驱动不用看到非常多的SSD FW的实现细节,例如,NAND空间管理、SUPER BLOCK组织、GC等,实现上会简化一些。但是对FW的架构影响较大。

与多流相比,多流是以SUPER BLOCK与一条流对应,粒度较大,一个SUPER BLOCK的空间都是以GB为单位。而FDP可以用更小的粒度对数据进行分组,比如以single block分组,可以在MB级别。

TP中还有较多的TBD,短时间应该还无法落地,后面再继续跟踪。

SSD的垃圾回收

参考:

​​​​​​​SSD的垃圾回收-GC_胡泉波的博客-CSDN博客​​​​​​​

TP相关的一个实验

Eliminating the I/O blender: The promise of flexible data placement

Flexible data placement (FDP) is a possible forthcoming feature of the NVMeTM specification that has been proposed by Google and Meta.The purpose of this feature is to reduce the write amplification (WA) when multiple applications are writing, modifying and reading data on the same device. Benefits of reduced WA for these companies come in the form of more usable capacity and potentially a longer useful life for each device.

做这个实验有一个潜台词:4个app的数据的生命周期是独立的。如果4个APP毫无关联,这肯定是理所当然的。

但是,即使这个潜台词完全正确,按照实验中的做法,将1个7.68TB的盘替换为4个1.92TB的盘后,在单个1.92TB盘内部,也无法将相同生命周期的数据按照NAND的擦除单元(一个single block)独立开来,也就无法消除因为垃圾回收带来的写放大WA。

写4个盘的实验中,按照当前SSD分配NAND物理空间和垃圾回收的方法不变,写放大的大小取决于APP写入数据的模型:

  • 顺序写入:每个block中写入的数据,都会全部被更新到另一个block;
  • 随机写入:每个block中写入的数据,会部分被更新到另一个block。最终写过数据的所有block中都有垃圾数据,同时也有有效数据。

所以,随着随机写入的比例提高,写放大WA也会随之提高。正如时延中所描述:

With the increase in randomness, we see a corresponding increase in write amplification from nearly 1 (1.02) to 1.63, as shown in Figure 3.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值