ibv_rc_pingpong(1)

ibv_rc_pingpong1

Simple infiniband rc transport test

Usage

ibv_rc_pingpong [-p port] [-d device] [-i ib port] [-s size] [-m size] [-r rx depth] [-n iters] [-l sl] [-e] [-g gid index] [-o] [-P] [-t] [-c] [-j] [-N] [-U] HOSTNAME

ibv_rc_pingpong [-p port] [-d device] [-i ib port] [-s size] [-m size] [-r rx depth] [-n iters] [-l sl] [-e] [-g gid index] [-o] [-P] [-t] [-c] [-j] [-N] [-U]

Overview

Run a simple ping-pong test over InfiniBand via the reliable connected (RC) transport.

Options

-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)

-m, --mtu=SIZE

path MTU SIZE (default 1024)

-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 QP (default 0)

-e, --events

sleep while waiting for work completion events (default is to poll for completions)

-g, --gid-idx=GIDINDEX

local port GIDINDEX

-o, --odp

use on demand paging

-P, --prefetch=

prefetch an ODP MR

-t, --ts

get CQE with timestamp

-c, --chk

validate received buffer

-j, --dm

use device memory

-N, --new_send

use new post send WR API

-U, --allow-cc-unprotected

allow allocation of unprotected/shared memory on CoCo guests

Releases

11 releases since Debian 4.0 (Etch); the text changed 4 times.

  1. 4.0
  2. 5.0–9
  3. 10
  4. 11–13
  5. Arch

--allow-cc-unprotected since Arch Linux 2026-11-01; --chk since Debian 10 (Buster); --dm since Debian 11 (Bullseye); --events since Debian 5.0 (Lenny); --gid-idx since Debian 10 (Buster); --ib-dev since Debian 5.0 (Lenny); --ib-port since Debian 5.0 (Lenny); --iters since Debian 5.0 (Lenny); --mtu since Debian 10 (Buster); --new_send since Debian 11 (Bullseye); --odp since Debian 10 (Buster); --rx-depth since Debian 5.0 (Lenny); --size since Debian 5.0 (Lenny); --sl since Debian 5.0 (Lenny); --ts since Debian 10 (Buster); -N since Debian 11 (Bullseye); -U since Arch Linux 2026-11-01; -c since Debian 10 (Buster); -d since Debian 5.0 (Lenny); -e since Debian 5.0 (Lenny); -g since Debian 10 (Buster); -i since Debian 5.0 (Lenny); -j since Debian 11 (Bullseye); -l since Debian 5.0 (Lenny); -m since Debian 10 (Buster); -n since Debian 5.0 (Lenny); -o since Debian 10 (Buster); -r since Debian 5.0 (Lenny); -s since Debian 5.0 (Lenny); -t since Debian 10 (Buster).

Authors

Roland Dreier

<[email protected]>

Bugs

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.

From rdma-core 65.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.