我想计算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传输速率是什么意思?是数据包传输速率还是读/写/发送/接收操作?
答案 0 :(得分:0)
如评论中所建议,测试性能的常用方法是通过perftest,它是一组带宽和延迟基准,特别是针对您的情况下的READ操作的ib_read_bw。
here及其-h
选项中详细介绍了ib_read_bw的配置选项。
此链接还会使您转到有关perftest package的页面。