gpt4 book ai didi

networking - InfiniBand 网络性能

转载 作者:行者123 更新时间:2023-12-02 01:34:26 32 4
gpt4 key购买 nike

我正在使用 iperf 测量 InfiniBand 的性能。

它是服务器和客户端之间的一对一连接。

我测量了请求网络 I/O 的线程的带宽变化数。

(集群服务器有:

  • “用于系统 x 的 Mellanox ConnectX-3 FDR VPI IB/E 适配器”和
  • “Infiniband 40 Gb 以太网/FDR InfiniBand”)

带宽:

 1 thread  : 1.34 GB/sec,
2 threads : 1.55 GB/sec ~ 1.75 GB/sec,
4 threads : 2.38 GB/sec,
8 threads : 2.03 GB/sec,
16 threads : 2.00 GB/sec,
32 threads : 1.83 GB/sec.

正如您在上面看到的,带宽在 4 个线程之前上升,然后下降
你能给我一些想法来理解那里发生的事情吗?

此外,如果多台机器向一台机器发送数据,会发生什么情况? (争用)
InfiniBand 也可以处理吗?

最佳答案

这里隐藏着很多事情。但 infiniband 最大的瓶颈之一是固件中的 QP 缓存。

固件有一个非常非常小的 QP 缓存(数量级为 16 - 32),具体取决于您使用的适配器。当事件 Qps 的数量超过此缓存时,使用 IB 的任何好处都会开始退化。据我所知,缓存未命中的性能损失大约为 mili 秒..是的..毫秒..

还涉及许多其他缓存。

Ib 有多种不同的传输方式,最常见的两种是:1. RC——可靠连接2. UD——不可靠的数据报

Reliable Connected 模式有点像TCP,它需要显式连接,并且是point 2 point between 2 processes。每个进程分配一个类似于以太网世界中的套接字的QP(队列对)。但由于许多不同的原因,QP 比套接字更昂贵且资源更多。

UD :不可靠数据报模式与 UDP 一样,不需要连接。单个 UD Qp 可以与任意数量的远程 UD Qp 对话。

如果您的数据模型是 1 对多 .. 即 1 台机器对多台机器,并且您需要与大量数据的可靠连接,那么您就不走运了。 IB 开始失去一些有效性。

如果您有资源在上面构建可靠的层,那么使用 UD 来获得可扩展性。

如果您的数据模型是一对多,但许多远程进程驻留在同一台机器上,那么您可以使用 RDS(可靠数据报服务),它是一个使用 Infiniband 的套接字接口(interface),并通过单个 RC 连接复用多个连接两台机器之间。 (RDS 有其自身的一系列奇怪问题,但它是一个开始..)

第三种新的传输方式称为 XRC,它也缓解了一些可扩展性问题,但也有其自身的注意事项。

关于networking - InfiniBand 网络性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32063916/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com