12. gc-iputraffictest
This tool tests the data transfer between IPUs.
To use it to test data transfer between device 2 and device 3, for example, run:
gc-iputraffictest --device0 2 --device1 3 -j
The device numbers used are those returned by the gc-info tool.
The output will be plain text if the -j option is not specified.
The JSON output will look something like this:
{
"tile_to_tile": {
"boards": {
"0024.xxxx.8203321": {
"power_sensors": {
"XDPE132G5C:0": "25.5",
"XDPE132G5C:1": "21"
},
"device_ids": [
"3",
"2"
],
"type": "M2000",
"board_power": "46.5"
}
},
"device0": "2",
"device1": "3",
"duration_sec": "0.079266418000000005",
"kbytes_transferred": "4096000",
"gbytes_transferred": "3.90625",
"gbps": "423.31207649625344",
"errors": "0",
"power": "46.5"
}
}
The reported bandwidth is the simultaneous bi-directional bandwidth: the
sum of the bandwidth from device0 to device1 and the bandwidth from
device1 to device0.
If an error occurs during the test, then gc-iputraffictest will return a
non-zero exit code, and output an error message.
You can use this tool to run a “soak test” of all the IPU-to-IPU links by running:
$ gc-iputraffictest --all-links
There is also a --forever option that will run either a point-to-point or
all-link soak forever (until interrupted by Ctrl-C).
The -j option is not available when --forever is used.
Note
The --device0 and --device1 arguments must be IDs for single IPUs, not
groups of IPUs. (The test will connect to the smallest group containing both
the sender and receiver.)
12.1. Usage
12.1.1. Allowed options
|
Emit JSON output |
|
First IPU of exchange |
|
Second IPU of exchange |
|
Number of (64)KB transfers per tile (default: 1000) |
|
Verbose output |
|
Even more verbose output |
|
Run high power consumption AMP loop on idle tiles |
|
AMP loop tiles sync with host before starting |
|
[=arg(=300)] ‘–amp’ option but with a delay between iterations.Interval specified in units of 1000 cycles |
|
Test using IPU-M loopback config |
|
[=arg(=0)] Exercise every link of a multi-ipu device at once. Defaults to the largest multi-ipu device in the system. |
|
Minimum bandwidth (Gbps) expected - fails if not reached |
|
Maximum error count expected - fails if exceeded |
|
Dump tile overview upon failure |
|
Transmit data forever |
|
Produce help message |
|
Version number |
12.1.2. Single ipu mode options
|
Run in single IPU mode. Required: run-master | setup | check |
|
Single IPU mode device id |
|
Number of IPUs in larger device |
|
DNC id |
12.1.3. Single ipu loopback mode
|
Single IPU loopback mode. Requires device id. |