Poplar and PopLibs
Reduce.hpp File Reference

Define types of operations used in a reduce. More...

#include "popops/Operation.hpp"
#include <poputil/exceptions.hpp>
#include "poplar/Graph.hpp"
#include "poplar/Program.hpp"
#include <poplar/OptionFlags.hpp>
#include <vector>

Go to the source code of this file.

Classes

struct  popops::ReduceParams
 Stores parameters for the reduce operation, as well as the basic operation being performed (for example, add or mul). More...
 
struct  popops::SingleReduceOp
 The parameterisation of the inputs to a single reduction for the reduceMany() function. More...
 

Namespaces

namespace  popops
 Common functions, such as elementwise and reductions.
 

Functions

poplar::Tensor popops::reduce (poplar::Graph &graph, const poplar::Tensor &in, const poplar::Type &outType, const std::vector< std::size_t > &dims, ReduceParams params, poplar::program::Sequence &prog, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={})
 Apply a reduction operation to a tensor. More...
 
poplar::Tensor popops::reduce (poplar::Graph &graph, const poplar::Tensor &in, const std::vector< std::size_t > &dims, ReduceParams params, poplar::program::Sequence &prog, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={})
 Apply a reduction operation to a tensor. More...
 
void popops::reduceWithOutput (poplar::Graph &graph, const poplar::Tensor &in, const poplar::Tensor &out, const std::vector< std::size_t > &dims, ReduceParams params, poplar::program::Sequence &prog, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={})
 Apply a reduction operation to a tensor. More...
 
void popops::reduceMany (poplar::Graph &graph, const std::vector< SingleReduceOp > &reductions, std::vector< poplar::Tensor > &outputs, poplar::program::Sequence &prog, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={})
 Perform many reductions (in parallel if possible). More...
 
poplar::Tensor popops::reduce (poplar::Graph &graph, const poplar::Tensor &in, const poplar::Type &outType, const std::vector< std::size_t > &dims, ReduceParams params, std::vector< poplar::ComputeSet > &css, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={})
 Apply a reduction operation to a tensor. More...
 

Detailed Description

Define types of operations used in a reduce.