Poplar and PopLibs User Guide
Version: 2.0.0
1. Introduction
2. Programming with Poplar
3. Using the Poplar library
4. The PopLibs libraries
5. Profiling
6. PopVision trace instrumentation library
7. Environment variables
8. Trademarks & copyright
Poplar and PopLibs User Guide
Poplar and PopLibs User Guide
1. Introduction
2. Programming with Poplar
2.1. Poplar programming model
2.2. The structure of a Poplar program
2.2.1. What happens at run time
2.3. Virtual graphs
2.4. Replicated graphs
2.4.1. Replicating an existing graph
2.4.2. Creating a replicated graph
2.5. Data streams and remote buffers
2.5.1. Data streams
Device-side streams
Host-side stream access
2.5.2. Optimising host data transfers
Prefetch
IPU-Link and sync configuration
Software sync
2.5.3. Remote memory buffers
2.5.4. Stream buffer size limit
2.6. Device code
2.6.1. Stack allocation
2.6.2. Pre-compiling codelets
3. Using the Poplar library
4. The PopLibs libraries
4.1. Using PopLibs
5. Profiling
5.1. Generating profiling information
5.1.1. Profiling options
5.2. Profile summary
5.2.1. Printing from a Poplar program
5.2.2. Command line conversion
5.2.3. Summary report format
6. PopVision trace instrumentation library
6.1. Overview
6.2. Tracepoints
6.3. Configuring trace options
6.4. Channels
6.5. Enabling and disabling trace
6.6. Closing the trace file
6.7. Python
6.8. C++ API
7. Environment variables
7.1. Logging
7.1.1. Logging level
7.1.2. Logging destination
7.2. Profiling output
7.3. Setting options
8. Trademarks & copyright