英特尔数据存储创新三大技术看点和猜想

“话说天下大势,分久必合,合久必分。周末七国分争,并入于秦。及秦灭之后,楚、汉分争,又并入于汉。汉朝自高祖斩白蛇而起义,一统天下,后来光武中兴,传至献帝,遂分为三国。”这是 “分久必合,合久必分”典故的出处。

天下大势如此, 数据信息产业的发展也概莫能外。但是大家也有一个疑问:现在的技术发展是三足鼎立呢?还是分久必合的趋势?

在2022中国数据与存储峰会上,来自英特尔的三位技术专家英特尔数据中心事业部 云解决方案架构师高伟、英特尔中国政企事务部及全球OEM解决方案经理吴国安、英特尔网络与边缘计算事业部云计算软件开发工程师裴迪分别从CSAL/WSR、持久内存存储和IPU SPDK存储卸载加速/优化的角度对数据存储的问题给出了解读。这些技术各有特色,依托各自强大的优势鼎立支持英特尔的技术发展

同时他们也具备一个共性,就是要解决爆炸式数据增长所带来的数据处理方面的问题。如Cloud Storage Accelerate Layer——CSAL(此前叫WSR),是利用QLC和傲腾构建云存储方面的价值,在提高性能和SLA的同时,提高存储密度,降低数据处理合存储的成本;傲腾持久内存存储模式优化,主要解决外部数据存储IO性能瓶颈的问题;相比,SPDK结合英特尔IPU对存储相关协议进行卸载和优化,则是充分利用IPU等异构计算来解决高性能和扩展性的问题。

让我们一起深入了解,这些技术是如何操作和实现的。

CSAL(WSR)助力阿里云打造更具竞争优势的云存储

随着CPU性能的不断提升,以及PCIe 4.0时代的来临,原本基于磁盘的存储方案越发捉襟见肘。磁盘存储容量有所提升,但单位容量的性能却不断降低,从而使得SLA下降。

以阿里云的一个实践案例来看,阿里云旗下大数据计算密集型实例规格族D2C采用的是磁盘的配置,在采用了CSAL和QLC加傲腾的技术组合后,阿里云推出了新的D3C实例。

新的D3C实例不仅存储性能和SLA有所提升,而且,整体密度增加3倍,RACK级别实现了3倍节省,减少了机架的空间占用,令阿里云受益良多。

D3C实例需要使用最新的QLC存储介质,但是QLC在耐久性上和写性能方面有许多问题,特别是在处理小IO的时候,其性能并没有比磁盘高多少,甚至在小数据块的顺序写场景中,其性能还不如磁盘。

在分享中高伟详细分析了造成此现象的原因:简单用QLC闪存盘替换磁盘的做法是行不通的。

阿里云旗下有I系列和D系列两类提供EBS本地存储的ECS实例,I系列强调低延迟和高性能,主要用于数据库场景,D系列强调低成本和大容量,主要用于大数据分析场景,新推出的D3C实例在性能上有大幅提升。

在构建实例的过程中,为了解决QLC在耐久性和性能方面的问题,英特尔和合作伙伴在过去一年里开展了一个叫CSAL的项目,而CSAL的作用主要有四个方面:

1,可根据用户工作负载需求自由调整的NAND存储性能和容量;

2,使用性能和耐久性都很高的傲腾来弥补QLC性能和耐久性不足的问题;

3,提供英特尔至强原生的高性能存储;

4,多租户下有更稳定的QoS表现,机架级别实现了三倍节省;

新的D3C实例采用了新一代的代号为Ice Lake的英特尔至强可扩展处理器,搭配CSAL技术和傲腾加QLC的技术组合,在计算和存储性能方面都有了大幅提升。

与此前的D2C相比,原来一台服务器只能提供一个大规格的虚拟机,而现在,一台服务器可以提供两个大规格的虚拟机。

并且,从TPCx-HS和TPC-DS两个跑分测试数据来看,新的D3C的性能表现都比原来的D2C有所提升。

此外,高伟还介绍了CSAL架构方面的更多细节,以及CSAL在新一代ZNS闪存盘上的一些性能数据,如何未来发挥更多作用。

英特尔®傲腾™持久内存存储模式的优化,值得期待

英特尔®傲腾™技术的研发始于2012年,2019年英特尔®傲腾™持久内存100系列与第二代英特尔®至强®可扩展处理器共同发布,随后,随着第三代英特尔®至强®可扩展处理器的发布,又发布了第二代的英特尔®傲腾™持久内存200系列,而第三代英特尔®傲腾™持久内存也将在明年年初与第四代英特尔®至强®可扩展处理器一道发布。

从英特尔技术专家吴国安的介绍中了解到,第三代英特尔®傲腾™持久内存的性能相比于200系列还会有大幅地提升。令人遗憾的是,由于一些原因,英特尔不再开发第四代傲腾持久内存产品,但后续将依靠至强平台支持的CXL协议来扩展内存的容量及带宽。

吴国安分享的重点是持久内存SNIA编程模型的优化问题,如图可见,编程模式分两种,一种是右侧的内存编程模式,另一种是左侧是存储编程模式,左侧是此次关注的重点。

与内存编程模式不同,存储编程模式不需要修改代码,并且,可以像操作普通磁盘和固态盘那样把傲腾当做块设备来使用,之所以能做到这点,很重要一方面就是因为有一个叫BTT的核心算法。BTT核心算法可以将字节访问的持久内存设备,映射成为Block原子性的块设备,从而将持久内存设备视为是快速且低延时的SSD。也因此,它具有了和SSD一样的编程模型,这意味着它可以利用现有的SSD的生态,使用传统的读写接口,在所有现有的文件系统下正常工作。

在这种模式之下,傲腾持久内存可以像普通SSD一样,作为缓存来加速存储性能。

最近,Linux内核方面有两个优化,这两个优化可以大大提升这种模式下的性能表现。分享中详细介绍了持久内存存储编程核心算法-BTT的更多细节,介绍了两种优化存储模式的方法,一种是算法优化,将BTT算法在持久内存中的16字节的bflog操作逻辑变为内存中的操作,减少写操作的开销。

另一种是动态控制deepflush,利用英特尔平台的ADR功能而无需使用deepflush指令从而获得非常好的性能提升。

最后,让我们再看持久内存存储编程模式可能的发展方向。新一代的英特尔至强可扩展处理器将内置DSA的加速器,它可以卸载CPU的数据搬迁工作,从而节省CPU的资源,又比如CXL技术将来可以和持久内存存一起来获得更优的存储性能。

详细的技术细节也可以参考:持久内存BTT实现及优化(一)持久内存BTT实现及优化(二)

相关的代码可以参考:[PATCH] BTT: Use dram freelist and remove bflog to otpimize perf以及[PATCH] ACPI/NFIT: Add no_deepflush param to dynamic control flush operation。 

SPDK在英特尔IPU的存储卸载中有重要作用

SPDK(Storage Performance Development Kit)提供了一系列的工具和类库来创建高性能、可扩展的、用户态的存储应用,能用于构建超高性能的存储应用。

去年,英特尔正式发布了两款IPU(Infrastructure Processing Unit),一个叫Big Spring Canyon(BSC),另一个叫Mount Evans,两款IPU都能对存储进行卸载,并利用SPDK来提高性能。

英特尔技术专家裴迪介绍了IPU推出的背景和IPU的诸多价值。IPU不仅可以减少CPU资源的浪费,让CPU得到更充分利用,还能提升性能和降低延迟,此外,通过软硬件的结合,从而为云基础设施带来更高的灵活性。

Big Spring Canyon(BSC)是由英特尔®至强®D系列处理器和FPGA智能网卡来构建的,其优势在于可以利用英特尔®至强®强大的软件生态,性能强大,功能强大,还可以应对未来新的需求和定制化的需求。

Big Spring Canyon(BSC)卡的使用场景可以分为虚拟化模式和裸金属模式两种,裴迪结合两种典型的使用场景在技术层面上做了一些具体的介绍。

裴迪介绍了SPDK软件结合Big Spring Canyon(BSC)来支持存储卸载和弹性块设备的技术细节,让我们看到了SPDK软件在Big Spring Canyon(BSC)卡的存储卸载方面有重要作用,之所以使用SPDK来完成存储卸载工作,是因为SPDK具有强大的优势:

一方面,因为SPDK是一个用户态的软件,使用了Polling mode避免了内核态IO处理频繁上下文切换带来的性能开销,SPDK的数据面零拷贝和无锁的特性也极大提高了性能。另一方面,SPDK目前已经比较成熟,支持多种远端存储。

Mount Evans是一款基于ASIC芯片和ARM CPU打造的IPU,提供2 x 100G的网络能力,它是由英特尔和谷歌合作开发设计的。

Mount Evans继承了以往多款基于FPGA的智能网卡和IPU的开发经验,可应对各种真实的工作负载。它不仅拥有强大的性能,而且,在安全性和隔离性上面也具有更高水平的实现,从设计之初就将安全性和隔离性视为重中之重。

Mount Evans在硬件层面有许多技术创新,比如,它具有业内一流的可编程的包处理引擎,它拥有从英特尔傲腾拓展而来的NVME存储接口,它支持下一代可靠传输技术,它还带有先进的解压缩加速器。

在软件生态方面,Mount Evans经由软件开发人员、硬件开发人员和加速器开发人员共同设计开发,有更好的软硬协同。它支持Barefoot P4 Studio,可以为开发者提供更好的可编程性。另外,卡上运行的Linux操作系统能够充分利用DPDK、SPDK以及IPDK等软件生态。

在Mount Evans的CPU上也运行着SPDK存储服务,可以提供存储卸载和加速,SPDK在不同形态的IPU产品上都可以快速的匹配对应的硬件,同时提供高性能、高可扩展性,可对接到不同的存储服务中,为IPU加速产品化提供存储生态上的支持。

裴迪介绍了Mount Evans用SPDK卸载存储的技术细节和一些典型的使用场景,在技术实现上,重点提到了一个叫vDPA的技术,vDPA技术增加了更多硬件实现的功能,从而带来性能加速效果。

同时在IPU结合SPDK的使用场景中,也有涉及到最近比较热门的FaaS (Function as a Service)云原生相关的支持。

以上是三位专家演讲内容的概要,如果想了解更多演讲具体内容,欢迎查看视频回放。