Logo
Poplar and PopLibs API Reference
Version: 2.3.0
  • 1. Using the libraries
    • Setting Options
      • Environment variables
      • Option values
      • Unsupported options
    • Linking
  • 2. Poplar runtime API reference
    • FieldTypes
    • HalfFloat
    • InOutTypes
    • StackSizeDefs
    • VectorListTypes
    • VectorTypes
    • Vertex
  • 3. Poplar API reference
    • Utility classes
      • ArrayRef
      • CSRFunctions
      • CodeletFileType
      • Interval
      • OptionFlags
      • RandomSeed
      • ReplicatedStreamMode
      • RuntimeOptions
      • SerializationFormat
      • StringRef
      • SyncType
      • Type
      • TypeTraits
    • Graph creation
      • DataStream
      • DataStreamType
      • Graph
      • GraphElements
      • LateInitCallback
      • StreamCallback
      • Tensor
      • TensorCloneMethod
      • TensorRearranger
      • VariableMappingMethod
      • VariableRef
      • VectorLayout
      • VertexIntrospector
    • Control programs
      • Program
    • Device management
      • Device
      • DeviceManager
      • IpuLinkConfiguration
      • IpuLinkTopology
      • Target
      • TargetType
    • Graph execution
      • Engine
      • Error
      • Executable
      • RuntimeOptions
      • Exceptions
    • Profiling and debugging
      • CycleCount
      • DebugContext
      • GlobalExchangeConstraints
      • IPUModel
      • PerfEstimateFunc
      • ProfileValue
  • 4. PopLibs API reference
    • Adding PopLibs code to a graph program
    • Utility functions (poputil)
      • Broadcast
      • DebugInfo
      • GraphFunction
      • OptionParsing
      • TensorMetaData
      • TileMapping
      • Util
      • VarStructure
      • VertexTemplates
    • Tensor operations (popops)
      • AllTrue
      • Cast
      • CircBuf
      • CollectiveTypes
      • DynamicSlice
      • ElementWise
      • ElementWiseUtil
      • Encoding
      • EncodingConstants
      • Expr
      • ExprOp
      • Fill
      • Gather
      • GatherStatistics
      • HostSliceTensor
      • Loop
      • NaN
      • NormaliseImage
      • Operation
      • Pad
      • Rearrange
      • Reduce
      • ScaledAdd
      • Scatter
      • SelectScalarFromRows
      • SequenceSlice
      • Sort
      • SortOrder
      • TensorCollectives
      • TopK
      • UpdateScalarInRows
      • Zero
    • Linear algebra functions (poplin)
      • Cholesky
      • ConvParams
      • ConvolutionPreplan
      • ConvUtil
      • Convolution
      • FullyConnected
      • MatMul
      • MeshGrid
      • MultiConvolution
      • Norms
      • TriangularSolve
    • Random number operations (poprand)
      • RandomGen
    • Sparse tensor operations (popsparse)
      • Embedding
      • FullyConnected
      • FullyConnectedParams
      • MatMul
      • MatMulParams
      • PlanningCache
      • SparsePartitioner
      • SparseStorageFormats
      • SparseTensor
      • SparsityParams
      • BlockSparse
      • BlockSparseMatMul
    • Neural network functions (popnn)
      • BatchNorm
      • CTCInference
      • CTCLoss
      • CTCPlan
      • GroupNorm
      • Gru
      • GruDef
      • InstanceNorm
      • LayerNorm
      • LogSoftmax
      • Loss
      • Lstm
      • LstmDef
      • NonLinearity
      • NonLinearityDef
      • NonLinearityDefUtil
      • Norms
      • Pooling
      • PoolingDef
      • Recurrent
      • Rnn
      • SpatialSoftMax
  • 5. GCL API reference
    • CollectiveBalancedReorder
    • Collectives
    • TileAllocation
  • 6. IPU Builtins
    • Get COUNT_L from CSR
    • Get COUNT_U from CSR
    • Get VERTEX_BASE from CSR
    • Get TILE_ID from CSR
    • Generate random 32-bit integer
    • Generate random 64-bit integer
    • Generate random 16-bit float
    • Generate random 32-bit float
    • Classify float
    • Triple-pack three addresses
    • Write to an upper CSR
      • Example:
    • Write to a CSR
      • Example:
    • Read from an upper CSR
      • Example:
    • Read from a CSR
      • Example:
    • Check for worker mode
      • Example:
    • Roll-left SIMD permutation
    • Roll-right SIMD permutation
    • Check whether floating-point value is finite
    • Check whether floating-point value is infinite
    • Check whether floating-point value is NaN
  • 7. Deprecated
  • 8. Index
  • 9. Trademarks & copyright
  • Doxygen
Poplar and PopLibs API Reference

3. Poplar API reference

The Poplar library contains functions for creating and executing graphs, transferring data to and from the IPU, and managing the hardware.

Utility classes

  • ArrayRef
  • CSRFunctions
  • CodeletFileType
  • Interval
  • OptionFlags
  • RandomSeed
  • ReplicatedStreamMode
  • RuntimeOptions
  • SerializationFormat
  • StringRef
  • SyncType
  • Type
  • TypeTraits

Graph creation

  • DataStream
  • DataStreamType
  • Graph
  • GraphElements
  • LateInitCallback
  • StreamCallback
  • Tensor
  • TensorCloneMethod
  • TensorRearranger
  • VariableMappingMethod
  • VariableRef
  • VectorLayout
  • VertexIntrospector

Control programs

  • Program

Device management

  • Device
  • DeviceManager
  • IpuLinkConfiguration
  • IpuLinkTopology
  • Target
  • TargetType

Graph execution

  • Engine
  • Error
  • Executable
  • RuntimeOptions
  • Exceptions

Profiling and debugging

  • CycleCount
  • DebugContext
  • GlobalExchangeConstraints
  • IPUModel
  • PerfEstimateFunc
  • ProfileValue
Previous Next

Revision 8f509b55.