1. Overview

This Quick Start guide describes how to run the MNIST PyTorch application (from the Graphcore examples repository) in a Jupyter Notebook on the IPU. We start a Jupyter server on a host with access to IPUs. Then, we set up port forwarding so that you can access the Jupyter server from a browser running on your local machine.

New to IPUs?

We suggest watching the Fundamentals of the IPU and Poplar video, which introduces the IPU architecture and programming model.

You can also read the IPU Programmer’s Guide and Switching from GPUs to IPUs for Machine Learning Models for more details on these topics.

1.1. Prerequisites

Before following the instructions in this Quick Start guide, you must be able to log into a system with access to IPUs. Details are given in the getting started guide for your system.

There are several ways you can run Jupyter Notebook applications:

  1. Directly on a cloud-based system or on IPU Pod hardware using the setup described in this document.

  2. In VS Code following the setup instructions in the tutorial Using VS Code.

  3. In a Docker container that has already been setup. The Demo-in-a-Box GitHub repository contains scripts and Docker files to help you get set up quickly.

For more information about using the Graphcore Docker images for Jupyter, refer to Using IPUs from Docker.

1.2. Summary of this document

This document will guide you through the steps required to prepare for running the application described in this guide, while also leading you through the steps required to prepare for running your own Jupyter Notebook application on any IPU host.

Step-by-step, this guide will show you how to:

You can expect the setup steps to take no more than 30 minutes.