You must measure RDMA bandwidth between two hosts. What do you run?
Why D is the answer
ib_write_bw
Start it on both hosts, as server and client.
In detail
- ib_write_bw measures RDMA bandwidth.
- Start it on both hosts, as server and client.
- It needs both ends.
Use case
An illustrative scenario, not a real incident.
An engineer starts ib_write_bw as a server on one host, and a client on the other.
See it in different ways
flowchart TD
A{"What do you want to know?"} -->|"Local port state"| B["ibstat"]
A -->|"Which nodes exist"| C["ibnodes"]
A -->|"Link details"| D["iblinkinfo"]
A -->|"Fabric errors"| E["ibdiagnet"]
A -->|"RDMA speed"| F["ib_write_bw and ib_write_lat"]stateDiagram-v2 [*] --> LocalPort: ibstat LocalPort --> Fabric: ibnodes and iblinkinfo Fabric --> Errors: ibdiagnet Errors --> Path: ibping Path --> Speed: ib_write_bw and ib_write_lat Speed --> [*]
sequenceDiagram participant P0 as Client host participant P1 as Server host P0->>P1: RDMA writes P1-->>P0: Bandwidth result
Key point: ib_write_bw measures bandwidth.
Why the other options are wrong
- A. ib_write_lat
- That measures latency.
- B. ibnodes
- That lists nodes.
- C. traceroute
- That is for IP paths.

