您的位置:首页 > 其它

PCIe SSD飞入寻常百姓家靠什么?

2017-10-14 19:23 405 查看
近几年,SSD发展势头凶猛,特别是消费级和企业级SSD均有显著的增长。在2017年第四季度,已经有超过50% notebook开始采用消费级SSD。另外,还有很多国产品牌撑起了消费级SSD零售重担。



目前消费级市场上的SSD主要有两种,一种是SATA SSD,另外一种则是PCIe SSD。其中,SATA SSD仍然是市场主导。但是,与SATA SSD相比,PCIe SSD的性能有成倍的提升,在当下,NVMe/PCIe已成为时代的趋势。预计在2018年,市场上采用PCIe Gen3的SSD将达到50%。



既然,PCIe SSD发展这么好,为啥在市场上还不能普及?归根结底,就是一个字:贵!

消费级SSD市场面对的是终端用户,而非数据中心等企业用户。消费级SSD潜在用户,在换SSD之前用的都是机械硬盘HDD,换了SATA SSD之后,性能也会有明显的提升,如非性能发烧友,何必花大价钱换PCIe SSD呢?所以,最终造成的情况就是,PCIe SSD在消费级市场只是高端旗舰电脑或者有钱人的选择,寻常百姓只能望而却步。

为了改善这种尴尬的局面,SSD厂家就开始动脑筋了,不是PCIe SSD成本高嘛,那好,我把DRAM颗粒去掉,做成DRAM-Less PCIe SSD. 很显然,省掉了DRAM芯片,成本自然下降了,对PCIe SSD的普及起到积极的促进作用。

英雄所见略同!DRAM-Less PCIe SSD已经成为了众多SSD厂商的选择,主控厂商也相继发布支持DRAM-Less的PCIe主控芯片,如Marvell的88NV1160,慧荣科技的SM2263XT等。

在PCIe SSD去掉DRAM之后,SSD端就少了缓存,为了减少缺省DRAM所带来的性能下降,人们又想到了Host Memory Buffer(HMB, 主机内存缓存区)。在NVMe 1.2 Spec开始引入HMB功能,不过,这个功能是optional,并不是必须的。HMB功能的作用就是在主机的DRAM内存中留出一块缓存区专门供SSD使用,如下图:



不过,对于HMB有几点需要注意:

(1)HMB功能由Host操纵,Enable或者Disable;

(2)初始化阶段,Host需要向controller提供一份"可用内存记录表", 以告知Controller,Host哪段内存是供SSD专属使用的;

(3)主控负责对Host提供的那段内存进行初始化;

(4)在关机或者RTD3或者其他要求Host重新分配内存的事件发生之前,Host需要告知Controller释放那段专属的内存空间;

(5)Device允许向Host要求最小分配内存空间;

(6)在发生意外插拔时,Controller需要确保数据没有丢失或者损毁。

有了HMB之后,NVMe/PCIe SSD的命令处理流程也发生了变化。

下图左是正常情况下NVMe CMD处理流程;

下图右是DRAM-Less HMB PCIe SSD的NVMe CMD处理流程;区别就是在数据会先写入HMB,当HMB写满之后,在写入NAND flash.



理解了HMB的概念,那HMB到底对SSD有没有好处呢?我们让数据说话。

顺序工作负载



从上图顺序读和顺序写的性能表现来看,HMB对顺序工作负载的性能影响不大,作用可以忽略。

随机工作负载



对于随机读,HMB对SSD性能提升效果显著,特别是1024GB SSD,加入HMB之后,性能提升了70%,全盘读性能也提升了40%。



对于随机写,HMB对SSD性能提升的效果更加明显,1024GB SSD的随机写性能直接跃升5倍之多。

通过上述实验对比发现,HMB对顺序工作负载基本没有效果,对随机工作负载的提升效果极大。

那么,这里,我们在思考一个问题:HMB的大小对随机工作负载有影响吗?

答案是肯定的,看下图:



从上图发现,当HMB的大小为1024MB时,SSD的随机工作负载效果最佳。

HMB是好,但能完全信任吗?

在HMB注意事项里,我们提到"在发生意外插拔时,Controller需要确保数据没有丢失或者损毁。" 在HMB里面存在的内容主要有:数据,mapping table, metadata等,如果发生数据丢失或者损毁,那么对用户来说,肯定是不愿意接受的。



为了保护HMB里面内容,那就需要请出End-to-End数据保护这位大神了,在这里,E2E就不再展开咯,具体参考NVMe Spec。



写在最后

看完本篇文章,我们对标题给出的疑问"PCIe SSD飞入寻常百姓家靠什么?"应该有解答了。那就是,需要依靠本文中提到的DRAM-Less和HMB来保证成本下降的同时,性能依然保持足够的竞争力。


更多精彩内容,敬请关注头条号【存储随笔】获取更多活动内容。
同时,也可以关注信公众号:
存储随笔,Memory-logger. 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  PCIe NVMe SSD