如何在RDMA上构建性能测试并运行延迟测试

时间:2018-11-06 20:35:55

标签: c linux performance-testing microbenchmark rdma

我正在尝试构建perftest C library以便通过RDMA协议运行一些延迟测试。

我的步骤:

  • 我从their GitHub下载了该库,并将其解压缩到要运行服务器进行测试的盒子上。
  • 我执行了:

    ./autogen

    ./configure

    make clean && make V=1


  • 我试图进行测试

    ./ib_send_lat --duration=30 -H

..但是我收到了以下错误

Port number 1 state is Down
Couldn't set the link layer
Couldn't get context for the device

我在做什么错了?

运行使用RDMA协议的其他测试(例如the ones in Accelio),系统不会出现问题。

我还运行了一些诊断工具,并且一切似乎都已经正确配置:

  • 验证已加载RDMA内核部件(存在 ibuverbs enter image description here

  • 已验证RDMA设备可用 enter image description here

  • 验证可以访问RDMA设备(第二个设备说PORT_ACTIVE) enter image description here

  • 已验证RDMA上的流量正在使用rping enter image description here

  • 从客户端向服务器发送消息。

有什么建议吗? (我在他们的GitHub上打开了issue,但没有收到回复)

谢谢

1 个答案:

答案 0 :(得分:1)

我怀疑问题是perftest工具默认使用处于PORT_DOWN状态的设备。

尝试使用'-d'选项指定要使用的特定设备。例如:

ib_send_lat -d mlx5_0 ...

(这可能需要在链接的两侧进行。)