FMS 2018 (5):Open Channel SSD占据半壁江山

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

作者 Xilinx 唐杰

和今年7月份在存储重镇武汉召开的存储半导体峰会一样,Open Channel SSD在FMS2018 的众多话题中的分量很足。在架构相关的议题中占了半壁江山。从目前看到的方案来看,大家的目的都类似,主要解决问题是:

1. I/O 的隔离

2. 实现可以预期的延时

3. 将底层的NAND的Channel暴露到上层来实现更好的I/O并行处理和调度

clip_image002

目前主要实现的方案有三种,Alibaba AOC, Facebook I/O Determinism 以及Open Channel的创始公司CNEXLabs (Microsoft 投资的公司)。 在本次的FMS上三家都有讲各自的方案,但是各自方案在自己公司的进展确实一个比较敏感的话题。先来看看各家的方面的阵营吧。

Alibaba AOC放出可他们的生态阵营如下:

clip_image004

Intel的加入对于整个生态的促进的确很大。CNEXLabs的存在说明Alibaba这个方案和标准的Open Channel还是有一定的联系的。

但是从目前的资料来看,Alibaba 的AOC在架构上和之前OC 还是有很大不同,可以看到的不同点在于:

l 提供了两种模式,标准的NVMe 和AOC 模式。

l 对于主机的接口方案,提供了内核+Block 块设备和用户态NVMe两种接口。

l 基于优先级的I/O调度,实现了 PU-based Read I/O Scheduling (PRS)/PU-based Read Throttling PRT/Priority-based Write Scheduling (PWS) /Adaptive Write Throttling (AWT)四种机制。

比较有意思的是在Shannon-System的母公司的SMI的展台上有一颗2270的SSD控制器。

clip_image006

这个2270控制从date sheet上看是由两个2262在后端堆叠起来的。

而且已经点名了可以支持OC SSDs,看起来和Alibaba的AOC应该是比较match。因此想到Intel会不会也是用这个来做AOC SSD呢?

毕竟Intel在今年五月的SPDK的summit上讨论的open channel SSD的也讨论了双模的支持,以及对于SPDK的支持。

clip_image008

对于Facebook的I/O Determinism, 他们可能因为和Intel的关系比较密切,因此选择了加入NVMe标准的道路。大家可以在之前的OCP和FMS看到Facebook在定制SSD的I/O Determinism的进展。2017年的FMS和2018的OCP上,可以看到Seagate 的Nytro部门和Facebook走的很近,但是随着Facebook主导的各种TP在NVMe协议组织里面出现,现在很难看出facebook会使用哪一家的硬件。在FMS2018上的Facebook的Topic中,他们提出了目前实现的局限性:

clip_image010

同时Facebook又挖了一个大坑:

clip_image012

比较有意思的,的确有一家不透露名字的startup在follow up facebook的需求。具有的信息,我就不放上来了。他们认为需要根据Facebook的需求重新定义SSD的架构。需要根据NVM Set的概念,在SSD的控制器的相关资源中进行分割,实现多个sub system的device。因为Facebook的提议都在NVMe的协议组织中,但是大部分应该都是option的,如果真的有人愿意根据Facebook的几个大坑来定义自己的SSD控制器,我只能说祝你好运了。

最后来讲讲CNEXLabs的正宗open channel SSD,这个概念已经和Microsoft的Denali Porject紧密结合。目前不仅CNEXLabs,连Marvell,SMI都宣布自己加入Denali project了,目前来看Microsoft的江湖地位还是高。

对于Open Channel SSD的定义的技术细节,在lightnvm.io上大家都可以看到,就不在这里赘述了。就讲讲今年CNexlabs的update吧。

l Cnextlabs的那个主导Open Channel SSD的哥们去了WD,但是还在讲这个,对OC 应该是件好事,多了一个大客支持。

l Device的保修问题。这个问题也是笔者一直和CNexlab的大佬有疑问的地方。因为Host is King,如果来一个不靠谱的程序员来用OC SSD,可能在几分钟内把一个OC SSD一部分NAND写穿。连我们Xilinx做OC SSD的开发平台的时候,都考虑使用SODIMM的NAND 模块可以拆卸,而不是直接NAND Down。

l 不管OC 如何开放,因为坏块管理的需求,以及IO隔离,因此肯定要有一部分的保留区域,可能没有传统的OP那么大。在多用户的场景下,如何在寿命和IO隔离之间平衡也是一个问题。

l CNexlabs在Denali的基础上做了over Fabric的尝试,这个基本上是利用NVMe over Fabric在远端和本地的NVMe访问的透明做一些有益的应用探索。

clip_image014

总之,可以看出,目前这种基于Open Channel 思想的SSD架构的本质上需要有壕客支持,底层的设计和上层的应用紧密结合,注定是几个客户才用得上的产品。大部分吃瓜群众在学术上面作围观就行了。作为前Host FTL的代表Fusionio的前员工,我对Open Channel有着深深的敬意,因为Open Channel的思想本质上是如何使用SSD构建一个高效,稳定的存储系统的积极探索,那些做全闪阵列的厂家,可能不会使用Open Channel SSD本身的标准,但是盘控联动肯定是不可缺少的。目前如何控制底层SSD的GC对存储系统的影响还是一个艰难的topic。

分类目录 国外动态, 行业动态 和标签 .
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。