首页 > 最新资讯 > 借助 NVIDIA Spectrum 以太网最大限度地提高存储网络性能
借助 NVIDIA Spectrum 以太网最大限度地提高存储网络性能

借助 NVIDIA Spectrum 以太网最大限度地提高存储网络性能

2023-07-14 16:50

#人工智能 #深度学习


 

 

随着数据生成的不断增加,线性性能扩展已成为横向扩展存储的绝对要求。存储网络就像汽车道路系统:如果道路不是为速度而建造的,那么汽车的潜在速度就无关紧要了。即使是法拉利在充满障碍的非铺装的土路上也会很慢。 

 

连接存储节点的以太网网络架构可能会阻碍横向扩展存储性能。NVIDIA 加速以太网可以消除性能瓶颈,从而为一般应用程序,特别是 AI/ML 实现最高的存储性能。 

横向扩展存储需要强大的网络

 

全球每秒有 54000 张照片被拍摄。当您阅读本文时,这一数字将会更高。无论您的业务是什么,您都有可能拥有大量需要存储和分析的数据,而且数据量每天都在增长。 

 

以前使用越来越大的存储文件服务器的纵向扩展方法已被横向扩展方法所取代,以提供在容量和性能方面线性扩展的存储。 

 

借助横向扩展存储或分布式存储,可以配置和连接多个较小的节点,使其成为一个逻辑单元。单个文件或对象可以分布在多个节点上。 

 

当需要更大的规模时,可以轻松添加额外的存储节点,以提高存储容量和性能。这既适用于传统的企业存储供应商解决方案,也适用于软件和硬件独立采购的软件定义解决方案。 

 

分布式存储实现了灵活的扩展和成本效益,但需要高性能网络来连接存储节点。许多数据中心交换机不适合存储的独特流量特性,实际上可能会削弱横向扩展存储解决方案的性能。 

 

存储流量与传统流量的区别

 

对于许多用例来说,网络流量是一致且同构的,传统以太网就足够了。但是,存储设备生成的流量可能会导致以下详述问题。 

 

当前的存储解决方案受益于更快的 SSD 和存储接口,如 NVMe 和 PCIe Gen 4(即将推出 PCIe Gen 5),旨在提供更高的性能。
当存储网络架构饱和时,网络拥塞就不可避免,就像高速公路上交通量过多时造成道路拥堵一样。网络拥塞对于横向扩展存储来说尤其成问题,因为每个存储节点都需要提供快速的数据传输。但当出现拥塞时,许多数据中心交换机都存在公平问题,其中一些节点的速度会比其他节点慢得多。单个文件或对象通常分布在多个节点上,因此任何降低单个节点速度的操作都会有效地降低整个集群的速度。
大多数存储工作负载都是突发的,会产生密集的数据传输,并在短时间内反复需要大量带宽。当这种情况发生时,网络交换机必须使用其缓冲区来吸收突发,直到瞬时突发结束,从而防止数据包丢失。否则,数据包丢失将需要重新传输数据,从而显著降低应用程序性能。
传统的数据中心网络流量使用的最大数据包大小( MTU)为 1.5KB。当横向扩展存储节点可以使用 9KB 的“巨型帧”时,它们的性能会更好,这样可以在提高吞吐量的同时降低‌ CPU 处理开销。许多使用商用交换机 ASIC 构建的数据中心交换机在处理巨型帧时表现不佳或不可预测。

05

 

低延迟

 

提高存储 IOP 的方法之一是通过为基于闪存介质中的读/写操作实现几个数量级延迟降低。‌然而,当网络引入高延迟时,尤其是由于过度缓冲,这些昂贵的性能改进可能会丢失。

训练和推理都需要足够的数据量和高速访问,以确保 GPU 处理器足够快地输入数据,使其保持被充分使用。在训练期间,所有节点都会执行写操作,以提高模型的准确性。这导致了突发,使得交换机必须有效地处理拥塞。最后,较低的存储延迟使 GPU 能够更有效地处理计算任务。

为什么 ASIC 不适合存储流量

 

大多数数据中心交换机都是使用商用交换机 ASIC 构建的,这些 ASIC 针对传统的数据流量模式和数据包大小进行了成本优化。为了在实现带宽目标的同时保持低成本,以太网交换机芯片供应商通过使用分离缓冲区架构,这牺牲了公平性。 

 

每个交换机都有一个缓冲区,用于吸收流量突发,并在发生拥塞时防止数据包丢失。常见的方法是拥有一个跨多个端口共享的缓冲区。然而,并非所有共享缓冲区都是相同的——存在不同的缓冲区架构。 

 

商用交换机没有完全共享的缓冲区,而是使用入口共享缓冲区或出口共享缓冲区。 

 

对于入口共享缓冲区,在一组传入端口和特定内存切片之间存在静态映射。这些端口只能使用分配切片中的内存,而不能使用整个缓冲区,即使缓冲区的其余部分可用并且没有人在使用它。 

 

对于出口共享缓冲区,在一组输出端口和特定缓冲区内存切片之间进行映射。同样,每组出口只能使用其分配的缓冲区切片,而不能使用整个缓冲区。 

 

对于这两种体系结构,保持在同一内存切片中的流与在内存切片之间传输的流存在行为的不同。如果许多流使用具有相同缓冲区的端口,那么这些端口将面临更高的延迟和更低的吞吐量,而使用缓冲区其他切片的流量将享受更高的性能。 

 

存储性能取决于存储流量(和其他流量)使用的端口以及这些端口缓冲区切片的繁忙程度。这就是为什么使用分离缓冲区的交换机经常遇到公平性、可预测性和微突发吸收相关的问题。 

 

为什么深度缓冲区交换机

在存储方面未得到优化 

 

深度缓冲区交换机通常指的是提供更多缓冲区(GB 而不是 MB)的交换机。深度缓冲区交换机通常被推广用作路由器,因为如果网络速度不匹配或出现多对一通信情况,它们可以吸收并保持大量流量突发。 

 

但在大多数数据中心应用程序(包括横向扩展存储)中,深度缓冲区交换机会对性能产生负面影响,原因如下:

02

 

延迟

 

交换机缓冲区越大,每个数据包必须经过的队列就越长,延迟也就越大。深度缓冲区交换机的测试平均端口到端口延迟超过 500 微秒。与同代的完全共享缓冲区交换机相比,NVIDIA Spectrum 1 的延迟仅为 0.3 微秒。而交换/路由数据包需要的时间是纳秒而不是微秒。

深度缓冲区延迟高出 1000 倍。您可能想知道,这只是发生在拥塞的时候吗?不会。在拥塞的情况下,深度缓冲区的延迟会高得多;事实上,最高可达 20 毫秒,或高出 50000 倍。对于数据中心之间的路由器来说,500 微秒的延迟可能还可以,但在数据中心内,这意味着闪存存储性能的不可用。

 

相关新闻