Red Hat Team or Bond Aggregation with ConnectX-3 halves speed?

I have two servers. Both have this card in them:

Mellanox Technologies MT27500 Family [ConnectX-3]

If I Team ens1 and ens2 or Bond it, I still get half the speed connection compared to not doing anything.

Here is how I made the Bond:

nmcli con add type bond con-name bond0 ifname bond0 mode balance-rr ip4 x.16.40.165/24

nmcli con add type bond-slave ifname ens1 master bond0

nmcli con add type bond-slave ifname ens2 master bond0

Or here is how I made the Team:

nmcli con add type team ifname team0 con-name team0 ip4 x.16.40.165/24 gw4 x.16.40.1 config ‘{“runner”: {“name”: “roundrobin”}}’

nmcli con add type team-slave ifname ens1 master team0

nmcli con add type team-slave ifname ens2 master team0

To check speed I used either iperf3 or qperf:

qperf (On server A)

qperf x.16.40.165 tcp_bw (On server B)

iperf3 -p 5000 -s (On server A)

iperf3 -p 5000 -c x.16.40.165 (On server B)

If server A and server B are bonded or teamed:

qperf - bw = 1.1 GB/s

iperf - 10 Gbits/s

If server A is bonded or teamed and server B is NOT:

qperf - bw = 2.7 GB/s

iperf - 24.8 Gbits/s

Why does Bonding or Teaming seem to halve my transmit speeds? I can understand if I was in activebackup mode, but I’m using roundrobin!