作为第一个大规模商用的、最有希望接续NAND的下一代存储介质,最近这两三年Intel在傲腾上的投入不可谓不大。Intel甚至在2020年10月宣布出售NAND业务产品线。Intel如此有把握和决心,让我不得不感觉NAND在PLC之后的路,会非常艰难。
1 此地不宜久留
我们都知道NAND闪存的一些基本特性,那就是随着TLC、QLC及PLC的升级,P/E寿命会下降,同时制程工艺升级的话P/E寿命也会下降,双重叠加之后先进工艺的QLC、PLC寿命就会很难看。而且从SLC、MLC、TLC、QLC到PLC,这一路上的性能也是逐渐下降。原本NAND主打的就是性能,冲着高性能,大家才去容忍NAND的低容量高成本。
NAND介质照这样发展下去,会不会有商用的HLC恐怕都要两说了。有人说,那怕什么,只要容量大,性能低一些,耐久度低一些,照样会有应用场景,比如冷存储啊什么的。实际上,NAND目前已经开始与机械硬盘正面交锋了。机械硬盘除了性能,在容量、耐久度、成本上,NAND目前望尘莫及。此外,机械硬盘也在使用新技术来提升密度和容量,比如单盘体含双盘的Dual Actuator双磁头臂技术, 下一代的BPMR技术等等。
感觉上,NAND在技术上不断阉割自己,而机械硬盘则是不断提升自己,一个往下走,一个往上走,这怎么说也感觉怪怪的,前者还能走多远?甚至除了3D堆叠之外,还能不能走出一条新路?我持怀疑态度。
目前的NAND市场已经是硝烟滚滚,大家已然杀红了眼,而且性能上似乎已经遇到了天花板,前途不好说。总之,此地不宜久留。作为老江湖,Intel已经觉察到了。
2 转战新领域
Intel作为业界的Explorer和Pioneer以及Leader,善于在无人问津的地带从零开始建立生态。比如,NAND的出现填补了RAM和HDD之间的性能落差,而在RAM和NAND之间,仍然有较大的性能落差,尤其是随着大数据业务增长,对于这种细化的性能分级又有了大量的刚需。
从CPU核数的提升和内存容量提升的趋势来看,内存的发展步伐出现了明显放缓的趋势,以前的内存容量大概每三年翻一番,而现在大概是四年翻一番。不仅如此,从一台服务器的成本构成来看,内存的成本越来越高,甚至有时候能占到服务器整体成本的一半,内存不仅容量提升困难,成本也越来越高。
作为一种极具创新和颠覆性的解决方案,傲腾为传统计算体系结构提供了新的内存和存储层级,解决内存成本高和NAND SSD性能不足的问题,弥补DRAM内存和NAND SSD之间的空白。
英特尔傲腾作为一种创新的解决方案,凭借四大技术特性,构建了DRAM和内存之间的存储层级,与DRAM内存相比,它具有非易失性,掉电之后也不会丢失数据。与NAND SSD相比,傲腾还支持字节寻址,可以每次只访问部分字节,而不是像硬盘需要访问512字节或者4KB那么多,有效减少了写放大,同时,傲腾支持的就地写入,从而省去了垃圾回收机制,最后,配合低延迟的特性,最终让傲腾的性能表现远超普通NAND SSD。
傲腾持久内存有两种操作模式,一种叫做内存模式,在这种情况下,傲腾也具有内存一样的易失性,与DRAM构成内存池,DRAM作为高频热数据的缓存,用户无需对应用做任何修改就可以直接启用这种模式。
另一种模式是App Direct模式,这种模式下傲腾具有非易失性,需要低延迟同时不需要永久存储的数据可以放在DRAM上。需要持久存储或者结构化存储的大量数据适合放在傲腾数据中心持久内存上。如果想让内存中的数据持久化,那么肯定就得选App Direct模式了。
App Direct模式其实还有一个变种叫Storage over AD,这种模式中傲腾持久内存仍旧保持非易失性,这是一种NVDIMM方案,插在DIMM插槽上的存储,这种模式要求操作系统提供NVDIMM驱动,而且,无需修改应用就可以直接用。值得一提的是,它支持块寻址而非字节寻址。
随着第三代至强可扩展处理器发布的还有新一代傲腾持久内存——Optane Persistent Memory 200系列,傲腾持久内存的提升非常明显,就是容量更大,性能更高,更安全。
与上一代100系列相比,200系列的带宽提升了32%,容量方面,可为每一路服务器提供高达6TB的总内存。从性价比来看,200系列傲腾持久内存能将运行每台虚拟机的成本降低25%。
2020年,英特尔还发布了第二代傲腾SSD P5800X系列,号称是全球最快的SSD。P5800X与上代相比,性能提升了近四倍,延迟降低了一半。与英特尔自家最快的NAND SSD相比,P5800X的延迟低了13倍,QoS高了66倍,IOPS/GB的性能是27倍,耐久性是33倍。
在系统架构中,傲腾SSD主要是配合NAND SSD使用,作为NAND SSD的加速层,具体用法上有三种:加速(accelerating),缓存(caching)和分层(tiering)。在optane上加快系统性能,例如与TOC解决方案相比,可将延迟降低70%。
用作加速时,傲腾SSD上存放大量元数据(Metadata),与单纯使用TLC相比,能降低70%的延迟。用作缓存时,能大幅提高应用性能,比如在VMware vSAN集群里使用,能将支撑的虚拟机数量提高60%。分层也非常好理解,热数据先放在傲腾SSD上,数据变冷之后则迁移到NAND SSD上,这种方案能将延迟降低50%,同时降低TCO。
3 生态加速铺开
英特尔傲腾多用在数据挑战比较多的场景,比如数据库、高级分析(包括AI)、云计算、HPC以及存储系统方面,用户覆盖包括云服务商、金融行业、医疗健康、政府、能源运输等多个行业,全球许多大型知名企业都用上了傲腾。
据了解,《财富》世界500强中有200多家已部署英特尔傲腾持久内存,其中,企业客户占比最多,达到了40%,其次是云服务提供商占13%,金融服务领域占12%。《财富》世界500强公司中的80多家都部署了英特尔傲腾固态硬盘,其中,云服务提供商占24%,企业占17%。
傲腾的POC转化率非常高,也就是说,只要是做了PoC的企业,大部分都成了傲腾的用户,用户对于傲腾价值的认可度还是非常高的。
从应用类型来看,傲腾持久内存最常见的应用就是内存数据库(IMDB),占比达37%,其次是AI和数据分析应用。傲腾SSD的最典型场景是定制化场景,占到了27%,vSAN的场景占到了21%,然后是云服务商以及数据库这类应用。
以中国用户更熟悉的燕京啤酒为例,燕京啤酒使用了傲腾持久内存和傲腾SSD两种方案,在傲腾持久内存的帮助下,超融合方案可以支撑更多的虚拟机,在傲腾SSD帮助下,提高了存储的性能并降低了延迟。
凯克萨银行(CaixaBank)是西班牙著名的金融服务公司,他们在未来业务发展特别看重分析能力。凯克萨银行有20%的交易都是在移动端完成的,业务形态正在向金融服务的数字化转型,同时,基于对多渠道的客户数据进行分析创建新的商业模式。
为了实现这些目标,凯克萨银行部署了一个Oracle Exadata大数据解决方案,该方案使用了英特尔至强处理器和英特尔傲腾持久内存。这套方案在存储层中采用持久内存,可加快密集型数据分析,并提供实时响应能力,从而获得更具可操作性的客户洞察。
为了更好了解新冠病毒的传播方式和对患者的影响,美国医疗机构Mercy使用了基于SAP HANA、英特尔至强可扩展器和傲腾持久内存的数据分析系统,使用自然语言处理和人工智能技术从临床数据中获得了很多重要信息。在内存层中使用持久内存后,能快速分析大量结构和非结构化数据,从而为病人提供更智能的护理,提高响应和协调疫情的能力。
西班牙电信是全球最大的电信运营商之一,在16个国家和地区,为3.36亿人提供服务。它所提供的虚拟数据中心服务于关键工作负载,要求有持续的高吞吐量和低存储延迟,西班牙电信开发了基于VMware vSAN和英特尔志强可扩展处理器的超融合解决方案,提供整合的、易于管理的解决方案,有较高的吞吐量和低延迟表现,在vSAN的缓存层中使用了英特尔数据中心SSD,最终基于vSAN架构构建了满足SLA要求的存储方案。
时至2021年,傲腾的应用生态越发壮大,越来越多的软件开发商,云服务商以及OEM服务商加入了傲腾生态。
在一次测试中,阿里的Mars分布式内存计算框架利用傲腾持久内存,取得了很不错的性能加成。如下图所示,当需要处理的数据集超过了主存承载能力之后,溢出后的数据被放置在傲腾存储器而不是之前的NVMe硬盘中,随着数据量溢出主存,傲腾方案的性能会有显著提升。
Mars是一个基于张量的统一分布式计算框架,突破了现有大数据计算引擎以关系代数为主的计算模型,将分布式技术引入科学计算和数值计算领域,极大地扩展了科学计算的计算规模和效率。目前Mars已经实现了70%的Numpy常见接口,用户只需要通过import Mars就可以将已经编写好的基于Numpy的代码移植到Mars中。
Mars会将张量自动在各个维度上切分成小的chunk来分布式处理从而提升并行性,以便于将小颗粒任务派发到GPU,或者网络远端的其它集群节点上并行计算。
举例来讲,对于张量矩阵乘法,Mars会生成如下图所示的chunk级别执行图。在执行过程中,会有大量的中间过程,这些过程生成大量的数据会占用宝贵的主存资源。
每个chunk执行完毕之后,结果数据会被放置在shared memory中,当share memory中数据过多时,Mars会启动spill溢出控制机制,将溢出的数据转移到下层更大容量的存储器中。
经过评估,阿里发现使用Intel傲腾持久内存来作为主存的下一层存储器,无论是在性能上还是TCO上,相比直接用NVMe盘作为下层,都非常符合Mars系统的预期。
傲腾持久内存提供128GB、256GB和512GB容量,远高于目前最大容量仅限于每DIMM 128GB的可用SDRAM DIMM,而且与传统DRAM DIMM相比,傲腾持久内存的每GB成本更低。傲腾持久内存通过内存总线直接连接到处理器,在基于App Direct(简称AD)模式下,应用程序可以完全绕过操作系统,不需要设备驱动程序、系统调用、中断和上下文切换,就可以从用户空间直接访问持久内存上的数据。下图所示为采用NVMe闪存盘、NVMe傲腾盘和傲腾持久内存的访问延迟对比。
总体而言,使用Intel傲腾持久内存,解决了Mars科学计算中因数据溢出传到硬盘,导致I/O开销增大,计算性能降低的问题。通过测试,验证了在TCO成本相当的情况下,使用傲腾持久内存能够有效提升Mars科学计算性能。