2. Overview

The Graphcore PopVision® System Analyser is a desktop tool for analysing the execution of IPU-targeted software on your host system processors. It shows an interactive timeline visualisation of the execution steps involved, helping you to identify any bottlenecks between the CPUs and IPUs. This is particularly useful when you are scaling models to run on multiple CPUs and IPUs.

Used in combination with the PopVision® Graph Analyser application, the System Analyser allows you to identify exactly how long execution events take to run, from the main program itself all the way down to individual IPU execution steps.

Poplar - and the machine learning frameworks it supports such as PyTorch, TensorFlow and PopART - use the Poplar libpvti library to capture profiling information from your code. This information is saved to a file which you can then open and analyse in the System Analyser application. User APIs in C++ and Python are available to instrument your own application code.

The majority of the functionality in the System Analyser requires at least Poplar SDK 1.4, but there are some features (for example line graphs and metadata) that only become available in later SDK versions.These features are highlighted within this help document.

2.1. End User License Agreement

Before you can use the System Analyser, you must first agree to the End User License Agreement (EULA) that is displayed when the app is first opened (assuming that you have not already agreed to it in a previous version). Clicking on the Disagree button will quit the application immediately.

You can re-read the EULA at any time after you have agreed to it. Select View EULA from the Help menu.

  • You can toggle the EULA dialog between modal and full-screen view by clicking on the icon to the left of the window’s title.