PopXL User Guide and API (experimental)
Version: 3.1.0
1. Introduction
2. Concepts
2.1. IRs
2.2. Graphs
2.3. Tensors
2.4. Operations
3. Simple example
4. Data types
4.1. 8-bit floating point datatypes
4.2. 8-bit floating point inference model example
5. Tensors
5.1. Constant tensors
5.2. Variable tensors
5.3. Intermediate tensors
6. Supported operations
6.1. Data input and output
6.2. List of available operations
7. Custom operations
7.1. Environment
7.2. Parameter struct
7.3. Operation class
7.4. Opx class
7.5. Gradient operation class
7.6. Gradient opx class
7.7. Python bindings
7.8. Python wrapper
7.9. Auto-compiling custom operations with cppimport
7.10. Using your custom operation
8. Graphs
8.1. Main graph
8.2. Graphs
8.3. Creating a graph
8.4. Calling a graph
8.5. Calling a graph in a loop
8.6. Graph replication
8.7. Code loading from Streaming Memory
8.7.1. Minimal example
8.7.2. Controlling liveness between multiple calls
8.7.3. Optimisation: merging the code load operations
8.7.4. Advanced example: nested code loading
8.7.5. Advanced concept: code loading in dynamic branches
9. Transforms
9.1. Autodiff
10. Context manager
11. Session
11.1. Running a session
11.2. Getting and setting tensor data
11.2.1. When transfers will occur between host and device
11.3. Nested Session Contexts
11.4. Number of host transfers
11.5. Data input shape
11.6. Device Types
12. Variables in Streaming Memory
12.1. Remote buffers
12.2. Remote variable tensors
12.3. Variable tensors for replicated tensor sharding
13. Replication
13.1. Graph replication
13.2. Replica grouping
13.3. Code examples
13.4. Retrieval modes
14. Distributed PopXL Instances
14.1. Introduction
14.2. Primer on using PopDist and PopRun to run multi-instance applications
14.3. Basic Example
14.4. Variable ReplicaGroupings and multiple instances
14.4.1. Detail of inter-instance communication
14.5. Sharding and multiple instances
14.5.1. Basic Example
14.5.2. Using shard_over
14.5.3. Complex Example
15. Application example: MNIST
15.1. Import the necessary libraries
15.2. Prepare dataset
15.3. Create IR for training
15.3.1. Create network
15.3.2. Calculate gradients and update weights
15.4. Run the IR to train the model
15.5. Create an IR for testing and run the IR to test the model
16. Application example: MNIST with replication and RTS
16.1. Add support for replications
16.2. Change variable tensors to RTS variable tensors
17. Environment variables
17.1. Logging
17.1.1. POPART_LOG_LEVEL
17.1.2. POPART_LOG_DEST
17.1.3. POPART_LOG_CONFIG
17.2. Generating DOT files
17.3. Caching of compiled executables
18. Python API Reference
18.1. Ir
18.2. Contexts
18.3. Data types
18.4. Graphs
18.5. Modules
18.6. Random seeds
18.7. Remote buffers
18.8. Replica grouping
18.9. Session
18.10. Streams
18.11. Tensors
18.12. Tensor locations
18.13. Transforms
18.14. Utils
18.15. Ops available in PopXL
19. Index
20. Legal notices
PopXL User Guide and API (experimental)
Please activate JavaScript to enable the search functionality.