7. gc-hosttraffictest
This tool tests the data transfer between the host machine and the IPUs (in both directions).
To use it, run:
gc-hosttraffictest -d {device_id} -j
where {device_id}
is the id number returned by the gc-inventory
tool.
If JSON output is selected, the output will look something like this:
{
"repeat_0": {
"tile_to_host": {
"duration_sec": "2.8448334399999999",
"kbytes_transferred": "12800000",
"gbytes_transferred": "12.20703125",
"gbps": "36.858959306946282"
},
"host_to_tile": {
"duration_sec": "2.0582515429999999",
"kbytes_transferred": "12800000",
"gbytes_transferred": "12.20703125",
"gbps": "50.944987922693372"
}
}
}
The output will be plain text if the -j
option is not specified.
For example:
$ gc-hosttraffictest --device 0
Running test 1/1
tile -> host: 12.2070 GiB in 2.84 seconds, 4.29 GiB/s, 36.87 Gbps
host -> tile: 12.2070 GiB in 2.07 seconds, 5.91 GiB/s, 50.72 Gbps
If an error occurs during the test, then gc-hosttraffictest
will return a
non-zero exit code, and output an error message to the terminal.
7.1. Usage
7.1.1. Allowed options
|
Emit JSON output |
|
Device id |
|
Number of tiles: 1 to 32 (default: 32) |
|
r|w|rw|cc (default: rw) |
|
Number of 64 byte blocks per transfer: 2|4 (default: 4) |
|
Number of 4KB transfers per tile (default: 100000) |
|
Minimum bandwidth (Gbps) IPU to host expected - fails if not reached |
|
Minimum bandwidth (Gbps) host to IPU expected - fails if not reached |
|
Verbose output |
|
Produce help message |
|
Version number |
|
Use remote buffers |
|
Number of times to repeat test (default: 1) |