转自:SCM是什么鬼,NVMe与其结合将赋予存储介质哪些能力?
全SSD闪存阵列在企业级存储得到广泛应用,相比传统机械硬盘,它的延迟、性能和可靠性都有了显著提高。许多早期开发商抓住其闪存技术优势的机遇,通过快速推出全闪存产品来领先于竞争对手。他们相信可以依靠全闪存实现差异化。但这个过程是相对曲折的,虽然这些公司都拥有全闪存阵列产品,但是他们的产品都是基于专用技术之上,下面从SSD的发展历程来说起。
SSD存储介质和接口技术一直处于不断向前发展和演进的过程。SSD分为几个阶段,第一个阶段是SATA SSD或者SATA/SAS SSD为主导,这个阶段介质以SLC和eMLC为主。第二个阶段是PCIe SSD,PCIe SSD最大的问题是不标准,很多私有化协议各自为政,基于FTL位置不同主要分为Host based SSD和Device base SSD。
直到NVMe时代才统一了接口和协议标准,NVMe主要的产品形态有三大类。第一类是和SATA/SAS SSD兼容的U.2,第二类是和PCIe兼容的SSD卡,第三类消费级产品常用的M.2,具体请参看“闪存技术最全面解析”文章。
纵观SSD发展,NVMe的出现虽然对接口标准和数据传输效率上得到了跨越式的提升,但是存储介质目前主流还是基于NAND Flash实现。那再往前发展,存储介质应该怎么发展呢?
Intel Optane(傲腾)系列硬盘通过实践证明NVMe和SCM(Storage Class Memory)配对时才会显现更大的存储优势,那时数据存储将会迎来重大飞跃,NVMe的未来属于SCM。它将建立在行业协议标准而不是专有技术之上。
实际上,Intel/Micron发布3DX(PRAM)首次将NVMe和SCM结合,这个我在“从Intel Optane系列Coldstream和AEP谈全闪存性能优化”文章中有详细介绍,之后各大厂家都加大了SCM介质的投入。Intel称Optane Memory为Apache Pass(AEP),为高性能和灵活性而设计的革命性的SCM。称Optane NVMe SSD为Clodstream,为世界上最快、可用性和可服务性最好的SSD。
3D XPoint(包括Apache Pass DIMM和Clodstream SSD)位于DRAM和NAND之间,填补DRAM和NAND之间的性能和时延GAP。
SCM同时具备持久化和快速字节级访问的特点,前几天,Intel正式发布了Optane SSD 900P,分为280GB和480GB两种容量版本,承诺900P比友商NVMe SSD竞品快7倍,最高连续读取速度2500MB/s,连续写入速度为2000MB/s。
同时,SCM具备Persistent Memory介质和NVM(Non-VolatileMemory)介质特性。更重要的是SCM没有NAND Flash顺序写入和写前擦除的约束,操作过程更简单;SCM介质的在寿命和数据保持能力方面的表现也远超NAND Flash。基于这些特点,业界普遍认为SCM会成为颠覆存储系统设计的新一代介质,并优先应用于性能和可靠性要求较高的场景。
Intel/Micron发布3DX(PRAM)之后,各大厂家都加大了SCM介质的投入,从上图可见,SCM的目前的主要应用都是聚焦于填充SRAM和Storage之间的容量和性能GAP。目前在研的SCM介质种类繁多,但是比较主流的有PCM、ReRAM、MRAM和NRAM四大类产品。
PRAM(Phase-Change RAM)利用特殊合金材料在晶态和非晶态下的导电性差异来表示0或者1数据。其优点是结构简单,容易实现大容量、同时具备低成本等特点。
主要用于Cache加速和Cache内存应用,考虑到PRAM的成熟度、对热度敏感和写穿透等因素,在应用中一般搭配DRAM或SRAM一起使用,在填补RAM和Storage之间的性能、容量差距的同时,形成具有分级能力的高速Cache应用资源池;其典型代表为Intel的3D Xpoint。
ReRAM(Resistive RAM)通过在上下电极间施加不同的电压,控制Cell内部导电丝的形成和熔断的状态对外呈现不同的阻抗(忆阻器)值来表示数据;目前典型代表厂商为HPE和Crossbar。
HPE在2015年Discover Conference会议中就提出了忆阻器内存技术,并计划在新型计算机架构The Machine中使用,未来成为取代SRAM、DRAM形成通用内存(Universal Memory);具体可参看文章“HPE忆阻器内存和IBM原子磁盘原理解析”。
MRAM(Magnetic RAM)磁性随机存储器通过电流磁场改变电子自旋方向来表示不同数据状态。比较适用于CPU的高速缓存(如L2 Cache),代表厂商为Toshiba和Everspin。
NRAM(Nantero’s CNT RAM)碳纳米管随机存储器采用碳纳米管作为开关,控制电路通断表示不同的数据状态。由于碳纳米管尺寸非常小并且具备极强的韧性,因此NRAM密度可以很高、寿命也比较长,理论功耗也比较低。
下面以Intel Optane系列简单谈谈SCM现阶段的应用情况。
首先介绍下SCM SSD磁盘,如Intel推出的OptaneP4800X系列Clodstream SSD,虽采用NVMe协议但沿用NVMe Block接口,相比现有Flash SSD,在架构上SCM SSD也有很好的继承性,再加上SCM SSD有效避免了垃圾回收带来的性能衰减问题,所以主要应用在数据缓存和高性能主存场景。
元数据缓存:作为AFA产品的元数据缓存,配合DRAM,实际上实现了Memory+SCM SSD的两级缓存,突破内存容量瓶颈,增加数据缓存容量;
数据缓存:作为用户数据的加速层,提升典型应用场景下的性能体验;
数据主存:作为用户数据的存储,提供比Flash更高的性能存储系统。
接着谈谈SCM DIMM形态产品,如Apache Pass DIMM,它是基于内存访问语义(Load/Store)的SCM产品,这种形态可以提供与内存接近的访问时延很低,并提供相对内存更大的容量和数据持久化能力,通常用在如下场景。
持久化内存:作为数据持久层,对数据一致性要求很高的持久化系统,同时兼顾数据可靠性和数据读写性能。
内存数据库:作为数据In Place空间,提供数据运行和持久化存储空间。
系统日志卷:作为日志卷,例如,在HPC系统中通常采用Checkpointing实现对计算中间状态进行持久化保存,这是一个耗时、耗系统吞吐量的过程。
如果采用SCM DIMM实现日志卷实现数据持久化,则可以大大提升系统可靠性、性能,同时减少处理时间。
简单总结下,从SATA SSD,SAS SSD到PCIe SSD,NVMe SSD,主要经历了标准泛滥和统一两次技术变革,PCIe SSD是闪存创新的春秋战国时代,在语言和通信上各自有一套标准,NVMe SSD则是统一文字标准的秦国盛世。然而要发挥SCM的优势,对现有计算机系统软硬件架构提出了更大的挑战,每次产品的变革都凝聚了技术的变革。这些变革包括持久化内存的数据结构,事务技术,硬件架构,编程工具和软件堆栈等各方面。
在互联网络方面,现有的跨CPU间内存访问受限于网络时延,无法充分发挥SCM介质持久化的特点,Gen-Z标准的出现使得SCM可以独立以Gen-Z接口接入Gen-Z总线,各CPU以纳秒级的时延访问共享SCM介质从而更好的发挥SCM的性能,关于SCM和传统SSD之间的GAP和解决措施,后续再找时间跟小伙伴们分享交流。