1. Introduction

The Graphcore command line tools provide information on the current status of the connected hardware

The tools are available as a standalone package and are also included with the Poplar SDK.

To set up your environment to use the tools, you will need to source the enable.sh script provided:

$ source enable.sh
  • In the standalone command line tools package, this script is in the top-level directory of the installed package.

  • For the Poplar SDK, the script is in the poplar-OS-VERSION directory of the installed SDK (where OS is the operating system you are using and VERSION is the version of the Poplar SDK).


If the http_proxy and/or https_proxy environment variables have been set then you need to add the IP addresses for the IPU-Machines to the no_proxy environment variable in order to allow the tools to access them.

For example, if the subnet address of an IPU-POD is x.y.z, you could set the no_proxy environment variable using the following command:

$ export no_proxy="$(for k in {1..8}; do echo x.y.z.$k ; done | tr '\n' ',')"

The commands available are listed below.


Configure the installed C600 cards.


Allows you to use IPU devices in Docker containers using the Docker container engine.


Allows you to benchmark the number of floating point operations per second on one or more IPU processors.


Determines what IPU cards are present in the system.


Lists device IDs, physical parameters and firmware version numbers.


Displays the status and connectivity of each of the IPU-Links that connect IPUs. See also IPU-Link channel mapping for connectivity in an IPU Server containing C2 cards.


Monitors IPU activity on shared systems.


Resets IPU devices.


Allows you to test the internal exchange fabric in an IPU.


Tests direct writes to the IPU’s tile memory via the host.


Tests GW-Links on multi-rack IPU-POD systems.


Reports the latency of transfers between the host machine and the IPUs (in both directions).


Allows you to test the data transfer between the host machine and the IPUs (in both directions).


Allows you to test the data transfer between IPUS.


Tests all the memory in an IPU, reporting any tiles that fail.


Allows you to use IPU devices in Docker containers using the Podman container engine.


Tests power consumption and temperature of the IPU processors.

Some of these commands reference IPU devices by their ID. The ID mapping is shown in C2 PCIe Device IDs and channel map.

The use and output of each of these tools is described in the following sections.