fi_pingpong(1) | @VERSION@ | fi_pingpong(1) |
fi_pingpong - Quick and simple pingpong test for libfabric
fi_pingpong [OPTIONS] start server fi_pingpong [OPTIONS] <server address> connect to server
fi_pingpong is a pingpong test for the core feature of the libfabric library: transmitting data between two processes. fi_pingpong also displays aggregated statistics after each test run, and can additionally verify data integrity upon receipt.
By default, the datagram (FI_EP_DGRAM) endpoint is used for the test, unless otherwise specified via -e.
Two copies of the program must be launched: first, one copy must be launched as the server. Second, another copy is launched with the address of the server.
As a client-server test, each have the following usage model:
server$ fi_pingpong
client$ fi_pingpong <server address>
The server and client must be able to communicate properly for the fi_pingpong utility to function. If any of the -e, -I, -S, or -p options are used, then they must be specified on the invocation for both the server and the client process. If the -d option is specified on the server, then the client will select the appropriate domain if no hint is provided on the client side. If the -d option is specified on the client, then it must also be specified on the server. If both the server and client specify the -d option and the given domains cannot communicate, then the application will fail.
server$ fi_pingpong -p sockets
client$ fi_pingpong -p sockets 192.168.0.123
server$ fi_pingpong -p usnic -I 1000 -S 1024
client$ fi_pingpong -p usnic -I 1000 -S 1024 192.168.0.123
Specifically, this will run a pingpong test with:
server$ fi_pingpong -p usnic -I 10000 -S all
client$ fi_pingpong -p usnic -I 10000 -S all 192.168.0.123
There is no default provider; if a provider is not specified via the -p switch, the test will pick one from the list of available providers (as returned by fi_getinfo(3)).
If no endpoint type is specified, 'dgram' is used.
The default tested sizes are: 64, 256, 1024, 4096, 65536, and 1048576. The test will only test sizes that are within the selected endpoints maximum message size boundary.
Each test generates data messages which are accounted for. Specifically, the displayed statistics at the end are :
fi_getinfo(3), fi_endpoint(3) fabric(7),
OpenFabrics.
2018-10-05 | Libfabric Programmer's Manual |