Poplar and PopLibs
MatMul.hpp File Reference

Sparse matrix multiply operations. More...

#include <poplar/Graph.hpp>
#include <popsparse/PlanningCache.hpp>
#include <popsparse/SparseTensor.hpp>

Go to the source code of this file.

Namespaces

namespace  popsparse
 Support for sparse matrices.
 
namespace  popsparse::dynamic
 Support for dynamic sparse matrices.
 

Functions

SparseTensor popsparse::dynamic::createSparseDenseMatMulLHS (poplar::Graph &graph, const poplar::Type &inputType, const MatMulParams &params, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={}, PlanningCache *cache=nullptr)
 Create a sparse tensor that is used as the left-hand operand in a sparse * dense matrix multiplication. More...
 
poplar::Tensor popsparse::dynamic::createSparseDenseMatMulRHS (poplar::Graph &graph, const poplar::Type &inputType, const MatMulParams &params, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={}, PlanningCache *cache=nullptr)
 Create a dense tensor that is used as the right-hand operand in a sparse * dense matrix multiplication. More...
 
poplar::Tensor popsparse::dynamic::sparseDenseMatMul (poplar::Graph &graph, const SparseTensor &lhs, const poplar::Tensor &rhs, poplar::program::Sequence &prog, bool transposeLHS=false, bool transposeRHS=false, const poplar::DebugContext &debugContext={}, const poplar::OptionFlags &options={}, PlanningCache *cache=nullptr)
 Perform a sparse * dense matrix multiplication, yielding a dense result. More...
 

Detailed Description

Sparse matrix multiply operations.