【问题标题】:How to test the transferring rate of RDMA read option如何测试 RDMA 读取选项的传输速率
【发布时间】:2019-05-02 13:24:50
【问题描述】:

我想计算 RDMA 的数据传输率。使用带宽被宣布为 200Gbps 的 ConnectX-5。我使用 RDMA 读取操作编写数据传输代码。我在 ibv_post_send() 之前设置了开始时间戳,并在我得到操作码为 IBV_WC_RDMA_READ 的 cq 之后设置了结束时间戳。计算速率,我得到的传输速率约为 268.4 Tbps,超过了限制。我发现获得 CQ 元素并不意味着数据实际映射到本地。所以使用 memcpy 复制数据一次,计算时间 t1=end-begin;然后我使用 memcpy 复制相同大小的数据并仅计算复制时间 t2。速率=data_size/(t1-t2)。尽管如此,我还是得到了 185.6Gps,也超过了极限。问题: 1.我设置时间戳的方式对吗?如果没有,如何正确设置时间戳或如何设计实验来计算传输率。 2. Mellanox宣称的100Gps传输速率是什么意思?是数据包传输速率还是读/写/发送/接收操作?

【问题讨论】:

  • 我使用 ib_read_bw 无法达到 22.12Gps
  • 1.注意 Gbs 是Gigabit per second - 不要与 Gigabyte 混淆 - 用于测量操作系统中的 RAM 和文件大小。 2. Here's a simple RDMA 读/写基准我写的。也许会有帮助。如果您有任何问题,请告诉我。
  • To calculate bandwidth 需要将传输的字节数转换为千兆位并除以秒数。

标签: rdma


【解决方案1】:

根据 cmets 的建议,测试性能的常用方法是通过 perftest,这是一组带宽和延迟基准,特别是 ib_read_bw 用于您的案例中的 READ 操作。

ib_read_bw 的配置选项在here 及其-h 选项中有详细说明。

此链接还指向有关perftest package 的页面。

【讨论】:

    猜你喜欢
    • 2019-04-22
    • 1970-01-01
    • 2014-03-29
    • 2012-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-26
    相关资源
    最近更新 更多