恢复带宽与时延的平衡

作者:Frank T. Hady博士,英特尔院士,傲腾系统首席架构师,英特尔非易失性内存部解决方案事业部

随着数据集规模的不断增长,数据中心负载对内存、存储的性能和容量的要求也在不断提高。与此同时,每单位时间需要处理更多数据,组成计算系统的组件性能也在不断提高。所谓性能,是一个涉及多方面的话题,其中一些指标(例如带宽)的增长速度就会比其它指标(例如时延)的增长速度更快。

计算机架构师必须在这些不断增长的数据集和可用技术的相对性能提升之间寻找交集,从而创建一个能够快速完成任务的计算系统。本文将简要介绍相关技术的发展历史,以及最新推出的英特尔傲腾技术。这种新技术提供了缩短时延和提高带宽所需的新资源,填补了计算系统中的传统关键点,从而加快了应用速度。

内存和存储——简短的历史发展进程

DRAM是一个高带宽、低延时的数据存储器,但是每比特成本相对昂贵。通过在系统中增加DRAM的数量可以应对数据集规模增加的问题,但这样做成本会非常高。十年前,当速度较慢的机械硬盘(HDD)是许多系统中唯一可用的数据存储器,大家没有更多可选择空间。然而,访问高延时的机械硬盘会因为等待数据浪费太多的处理器周期。

NAND固态盘(SSD)的出现不仅为存储数据提供了一个新空间,还能够加快对更多数据集的访问速度。因此,基于NAND的固态盘在市场上得到了广泛的应用。然而现在,即使是速度很快的NAND固态盘也对当今需要实时或近乎实时访问和处理数据的数据驱动应用有些力不从心。因为就像10年前的硬盘一样,这些固态盘会导致处理器花过长时间等待数据,这会增加时延,从而阻碍系统获得现代CPU能够提供的性能。随着时间的发展,CPU性能提升然而存储时延却没能同步,这会拖累整个系统的性能提升。

随着技术的进步,保持时延与带宽平衡

为证明技术的发展,有必要比较以下不同存储介质随时间推移的相对带宽性能改善和时延改进。基于David Patterson的一项关键研究,图1将固态盘数据点添加到Patterson的“时延滞后带宽”图表中1。Patterson指出,从历史上看,带宽改进的速度通常要比时延快得多。根据摩尔定律,晶体管的数量在稳步增加2 ,同时多核架构在不断演进。

这些改进使得处理器可以处理更多指令,同时与上一代处理器相比,可以在相同或更短的时间内处理更多数据。但随着CPU处理时间的缩短,从硬盘获取数据的时延并没有相应地缩短。这导致存储技术成为整体性能的瓶颈。对于内存和存储技术来说,可以通过并行性来增加带宽,但访问该技术的时间相对恒定。因此,只有引入新技术才能实现更低时延。

要理解为什么这很重要,就要考虑当时延减少、带宽增加时会发生什么。通常,对于内存和存储资源来说,访问一个单元的数据不足以填充从内存到处理器的路径,即带宽乘以时延(带宽时延乘积)大于访问尺寸。在可能的情况下,为了充分利用资源的带宽,会明确把软件编写为“并行请求更大或更多的数据块”。随着带宽时延产品的增长,越来越少的算法能够在请求足够数据的同时来满足时延要求。然而在无法支持的情况下,则会影响系统带宽和性能。从最简单的层面来说,这就是为什么拥有一个平衡的带宽/时延比很重要。

回顾图1,基于NAND的 固态盘的引入在一段时间内提供了一个平衡的带宽/时延解决方案,它们的时延比硬盘低得多。基础访问时间从硬盘的几毫秒缩短到NAND 固态盘的不到100微秒,这意味着等待数据所花费的CPU周期更少。由于许多应用能够经常访问NAND 固态盘的全部带宽,因此处理速度以肉眼可见的速度提高了。随着时间的推移,带宽不断增加,而时延则保持相对恒定,带宽的加倍使得系统再次失衡。

以下示例演示了如何使用英特尔傲腾技术部署低时延英特尔傲腾数据中心级固态硬盘,从而提高VMware vSAN 等超融合基础架构解决方案的性能和容量。

英特尔傲腾技术将vSAN性能和容量提升到新的高度

企业业务和云服务提供商可利用英特尔傲腾技术,以非常经济的方式来提高虚拟服务器上运行的应用的性能。Evaluator Group的分析报告指出,英特尔至强可扩展处理器与英特尔傲腾技术和含NVM Express(NVMe)的英特尔3D NAND 固态盘相结合,可以为各种运行在使用VMware vSAN的超融合系统上的常见负载提供更好的性能3。

如图2所示,与运行NAND 固态盘存储介质的系统相比,运行VMware vSAN 6.7的系统(采用英特尔至强可扩展处理器和英特尔傲腾数据中心级固态盘)可显著提升性能。采用英特尔傲腾技术和英特尔3D NAND 固态盘构建的系统能够支持最多1.6倍的虚拟机,同时仍可以为每个虚拟机保持相同的服务水平协议。

这相当于每个系统可多支持60%以上的用户,这对于盈利和业务增长非常重要。由于英特尔至强可扩展处理器、VMware vSAN 6.7以及结合使用的高效英特尔3D NAND 固态盘与英特尔傲腾数据中心级固态硬盘提高了虚拟机密度、降低了基础设施成本,从而带来了明显的成本效益。

研究得出的结论是,由于旧的存储技术无法满足虚拟机的输入/输出(I/O)需求,所以旧系统的性能较低。本质上,由多个活跃虚拟机驱动的高I/O负载导致NAND 固态盘备份大量工作,从而增加了数据时延,直到无法再维持虚拟机所需的服务水平协议。

VMware vSAN的例子展示了一种“通过部署英特尔傲腾数据中心级固态盘来弥合数据中心内存与存储层级之间差距”的方法。经常访问英特尔傲腾技术网站,了解企业如何使用英特尔技术,更好地满足现代数据中心的需求。

图2:采用英特尔至强可扩展处理器,英特尔3D NAND 固态盘和英特尔傲腾数据中心级固态盘构建的较新VMware vSAN 系统,性能比仅基于英特尔3D NAND 固态盘的系统最多高出1.6倍。

新的内存和存储架构

英特尔傲腾技术可以在系统中扮演多种角色。如前所示,英特尔傲腾数据中心级固态盘可以利用标准PCIe NVMe接口连接到系统,通过平衡的带宽/时延来加速重要的数据中心应用。在这种形式下,空闲平均时延大约为10微秒,而NAND 固态盘则超过80微秒4 。图3显示了系统硬件和软件时延。英特尔傲腾数据中心级固态盘的硬件时延与系统堆栈软件时延大致相同,为系统带来了另一种平衡。即使在高负载下,始终如一的低时延以及高耐用性使这些固态盘成为快速缓存或分层热数据的理想选择。

英特尔傲腾技术现在也可作为直接插入DIMM插槽的英特尔傲腾数据中心级持久性内存模块使用。与DRAM DIMM不同,英特尔傲腾数据中心级持久内存具有持久性和更大的容量(每个模块最高可达512 GB)。如图3所示,使用英特尔傲腾数据中心级持久内存进行数据访问的时延要比使用英特尔傲腾数据中心级固态盘小得多。

英特尔傲腾数据中心级持久内存可以直接从应用访问,而不涉及操作系统存储堆栈,因此不再需要软件开销。对于持久内存,空闲平均读取时延下降到100到340纳秒。5相较之前提到的带宽时延产品的低时延,由于时延较低,因此可以使用较小的单元尺寸、一条高速缓存线访问该内存,同时仍然提供其全部带宽。因此,英特尔傲腾数据中心级持久内存是一种高速缓存线路可访问、高性能、持久的存储——是一种真正独特的新资源。

鉴于其高性能和持久性,英特尔傲腾数据中心级持久内存构成了另一个新的数据存储层,可以用各种方式来弥合容量与性能之间的系统差距。这种灵活性使企业可以构建能更好满足现代工作负载的处理和内存需求的数据中心,例如,英特尔傲腾数据中心级持久内存可显著提高内存数据库的容量。而且,由于持久性内存是非易失性的,因此不需要在数据库重新启动后将数据重新加载到内存中,从而提高了可服务性和系统正常运行时间,并改进了业务连续性。

图3:NAND固态盘、英特尔傲腾数据中心级固态盘和英特尔傲腾数据中心级持久内存的时延比较。

结论

在计算系统中,内存和存储层级结构把更频繁访问的数据放在更靠近处理器的位置,同时把占多数的数据移动到远离处理器、更便宜的内存中(时延更高)。内存和存储技术的固有时延往往会随着时间的推移而缓慢下降,而处理器的性能会以更快的速度提升。这将有效地把这些内存移到离处理器更远的位置,因此,处理器需要花费更多指令周期等待数据。只有引入新的低时延内存技术以及新的、更紧密集成的系统集成点,才能使系统恢复平衡。

随着英特尔傲腾技术的引入,英特尔为系统提供了一个新的内存来弥合DRAM与NAND固态盘之间的差距。作为固态盘和持久内存,全新英特尔傲腾技术使计算机架构师能够将大型持久数据结构离处理器更近,从而尽量缩短等待数据的时间并加快应用执行。当系统架构师平衡好带宽需求和低延时,就释放了CPU的强大功能。通过英特尔傲腾技术恢复带宽与时延之间的平衡,CPU现在可以快速消耗和处理数据,从而达到最佳系统性能。

英特尔院士:Frank Hady博士

Frank Hady是英特尔院士兼英特尔非易失性内存解决方案事业部(NSG)傲腾系统首席架构师。 Frank负责研究和定义英特尔傲腾技术产品及其与计算系统的集成。Frank曾担任英特尔领先的平台I/O架构师,为英特尔QuickAssist技术(英特尔 QAT)提供研究基础,并推动了平台性能显著提升。他撰写或联合撰写了30多篇关于网络、存储和I/O创新主题的论文,并经常发表关于内存和存储的文章。他拥有30多项美国专利。Frank获得弗吉尼亚大学的电子工程学士和硕士学位,并拥有马里兰大学电子工程博士学位。