Technical Notes and White Papers

Technical notes

Implementation

Creating Custom Operations for the IPU

An overview of the steps for implementing a custom op in each of the frameworks available in the Poplar SDK

PopSparse Matrix Multiplication (Dynamic Pattern)

A high-level description of the algorithmic design of the dynamic sparse matrix multiplication in the Graphcore PopSparse library

Porting TensorFlow 1 models to the IPU

A practical guide to porting TensorFlow models to the IPU using the Poplar SDK.

Model Parallelism on the IPU with TensorFlow: Sharding and Pipelining

Ways of parallelising TensorFlow models on IPU hardware

Optimisation

Memory and Performance Optimisation on the IPU

Optimising high-performance machine learning models running on the IPU

Optimising Temporary Memory Usage for Convolutions and Matmuls on the IPU

Using the “available memory proportion” option to optimise memory use or performance

Optimising for the IPU: Computational Graph Recompilation and Executable Switching in TensorFlow

Strategies to minimise recompilation when running code on the IPU

Pre-Training and Fine-Tuning BERT for the IPU

BERT-Large implementation on Graphcore IPU-POD systems, using both TensorFlow and PyTorch

Hardware

Graphcore OpenStack reference design for IPU-POD systems

A reference configuration of an IPU‑POD64 deployed with OpenStack management software

Scaling AI with Graphcore and Pure Storage

An example reference architecture, developed with Pure Storage, using FlashBlade storage with the IPU-POD

Switched GW-Links in large scale Pod systems

Using switched GW-Links to connect IPU-Machines in large-scale switched Pod systems

Graphcore IPU Based Systems with Weka Data Platform

An example reference architecture has been developed in partnership with Weka using the Weka data platform for AI with a Graphcore Pod.

White papers

Cloud Native IPU Pod Systems White Paper

White paper that introduces the Graphcore Cloud Native Pod. Describes how a cloud native software-defined as-a-service, (Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), Software-as-a-Service (SaaS)) can be overlaid onto Graphcore’s Pod systems.

Mixed-Precision Arithmetic for AI: A Hardware Perspective

The IPU’s hardware and software architectures support fast and efficient training and inference of deep learning models using mixed precision arithmetic

Graphcore’s AI Software Stack is Now Customer-Driven

A white paper from Cambrian AI Research examining the growing momentum of the Poplar software stack and ecosystem

Research papers

You can find research papers by Graphcore and others on our Developer Portal.