Targeting the IPU from TensorFlow 2
- 1. Introduction
- 2. Targeting the Poplar XLA device
- 3. Support for TensorFlow 2
- 4. TensorFlow 2 examples
- 5. Training a model
- 6. Example using IPUEstimator
- 7. Example using IPUPipelineEstimator
- 8. Distributed training
- 9. Half-precision floating point and stochastic rounding
- 10. IPU-optimised operations
- 11. IPU Outlined Functions
- 12. Custom IPU operations
- 13. IPU host embeddings
- 14. Retrieving information about compilation and execution
- 14.1. Adding an operation to get compilation and execution events
- 14.2. Enabling tracing in the hardware configuration options
- 14.3. Extract the reports from the returned events
- 14.4. Producing reports for use with the PopVision Graph Analyser
- 14.5. Using the IPU Model device for debugging
- 14.6. TensorFlow options for reporting
- 14.7. Reading the Poplar textual summary report
- 14.8. Producing an ELF image of the compilation
- 14.9. Dumping auxiliary Poplar information
- 14.10. XLA graph file naming
- 15. Python API
- 15.1. Operations and utilities related to the Graphcore IPU
- 15.2. Distribution strategy for a single system
- 15.3. Compiler interface
- 15.4. Scoping contexts
- 15.5. Infeed queue
- 15.6. Outfeed queue
- 15.7. General utilities
- 15.8. Looping utilities
- 15.9. Distributed training
- 15.10. Datasets
- 15.11. Estimators
- 15.12. Keras
- 15.13. Keras layers
- 15.14. Operators
- 15.14.1. Custom operations
- 15.14.2. Functional operators
- 15.14.3. Graphcore utility operations
- 15.14.4. IPU specific maths operations
- 15.14.5. Pipelining operators
- 15.14.6. Popnn primitive neural network operators
- 15.14.7. Popnn normalization operators
- 15.14.8. Popnn recurrent neural network operators
- 15.14.9. Popops all to all and all gather operators
- 15.14.10. Popops cross replica operators
- 15.14.11. Popops embedding operators
- 15.14.12. Popops reduce scatter operator
- 15.14.13. Poprand operators
- 15.14.14. Utility operations to be used in replicated mode
- 15.14.15. Summary operations for IPUs
- 15.15. Optimisers
- 15.16. Sharding
- 16. TensorFlow operators supported by the IPU
- 17. Resources
- 18. Index
- 19. Trademarks & copyright