Simple infiniband shared receive queue test
ibv_srq_pingpong [-p port] [-d device] [-i ib port] [-s size] [-q num QPs] [-r rx depth] [-n iters] [-l sl] [-e] HOSTNAME
ibv_srq_pingpong [-p port] [-d device] [-i ib port] [-s size] [-q num QPs] [-r rx depth] [-n iters] [-l sl] [-e]
Run a simple ping-pong test over InfiniBand via the reliable connected (RC) transport, using multiple queue pairs (QPs) and a single shared receive queue (SRQ).
-p, --port=PORT
use TCP port PORT for initial synchronization (default 18515)
-d, --ib-dev=DEVICE
use IB device DEVICE (default first device found)
-i, --ib-port=PORT
use IB port PORT (default port 1)
-s, --size=SIZE
ping-pong messages of size SIZE (default 4096)
-q, --num-qp=NUM
use NUM queue pairs for test (default 16)
-r, --rx-depth=DEPTH
post DEPTH receives at a time (default 1000)
-n, --iters=ITERS
perform ITERS message exchanges (default 1000)
-l, --sl=SL
use SL as the service level value of the QPs (default 0)
-e, --events
sleep while waiting for work completion events (default is to poll for completions)
Roland Dreier
The network synchronization between client and server instances is weak, and does not prevent incompatible options from being used on the two instances. The method used for retrieving work completions is not strictly correct, and race conditions may cause failures on some systems.