Setting one side’s gid to 0 in RDMA will result in a very slow speed, BW: 0.048323 GB/s, and will return to normal if both parties’ gid is set to other,BW: 6.003038 GB/s. I tested the speed of different gids with perftest and found that there is not much difference, please ask what may be the cause.
set the gid to 0 in perftest
---------------------------------------------------------------------------------------
RDMA_Read BW Test
Dual-port : OFF Device : mlx5_bond_0
Number of qps : 1 Transport type : IB
Connection type : RC Using SRQ : OFF
PCIe relax order: ON
ibv_wr* API : ON
CQ Moderation : 100
Mtu : 1024[B]
Link type : Ethernet
GID index : 0
Outstand reads : 16
rdma_cm QPs : OFF
Data ex. method : Ethernet
---------------------------------------------------------------------------------------
local address: LID 0000 QPN 0x1642 PSN 0xf6d81d OUT 0x10 RKey 0x203d00 VAddr 0x007f9d25c4c000
GID: 254:128:00:00:00:00:00:00:176:252:78:255:254:179:17:18
remote address: LID 0000 QPN 0x1c6f PSN 0x9d149 OUT 0x10 RKey 0x012800 VAddr 0x007f20cd130000
GID: 254:128:00:00:00:00:00:00:100:155:154:255:254:172:09:41
---------------------------------------------------------------------------------------
#bytes #iterations BW peak[MiB/sec] BW average[MiB/sec] MsgRate[Mpps]
8388608 1000 10918.53 10918.52 0.001365
---------------------------------------------------------------------------------------
set the gid to 3 in perftest
---------------------------------------------------------------------------------------
RDMA_Read BW Test
RX depth: 1
post_list: 1
inline_size: 0
Dual-port : OFF Device : mlx5_bond_0
Number of qps : 1 Transport type : IB
Connection type : RC Using SRQ : OFF
PCIe relax order: ON
ibv_wr* API : ON
CQ Moderation : 100
Mtu : 1024[B]
Link type : Ethernet
GID index : 3
Outstand reads : 16
rdma_cm QPs : OFF
Data ex. method : Ethernet
---------------------------------------------------------------------------------------
local address: LID 0000 QPN 0x1641 PSN 0xe2e08b OUT 0x10 RKey 0x203d00 VAddr 0x007fe60e845000
GID: 00:00:00:00:00:00:00:00:00:00:255:255:10:119:46:61
remote address: LID 0000 QPN 0x1c6e PSN 0x80035d OUT 0x10 RKey 0x012800 VAddr 0x007fde75aa3000
GID: 00:00:00:00:00:00:00:00:00:00:255:255:10:119:46:62
---------------------------------------------------------------------------------------
#bytes #iterations BW peak[MiB/sec] BW average[MiB/sec] MsgRate[Mpps]
8388608 1000 11035.96 11035.96 0.001379
---------------------------------------------------------------------------------------
It can be found that the bandwidth of the two is about the same.
But in my code, the gid setting to 0 is very slow, and the transfer size is 3999268864byte and takes 75.seconds.
I would like to ask what could be causing it.