MLIR  20.0.0git
Namespaces | Functions
WinogradConv2D.cpp File Reference
#include "mlir/Dialect/Affine/IR/AffineOps.h"
#include "mlir/Dialect/Arith/IR/Arith.h"
#include "mlir/Dialect/Linalg/IR/Linalg.h"
#include "mlir/Dialect/Linalg/Utils/Utils.h"
#include "mlir/Dialect/Tensor/IR/Tensor.h"
#include "mlir/Dialect/Utils/StaticValueUtils.h"
#include "mlir/Transforms/GreedyPatternRewriteDriver.h"
#include "llvm/Support/MathExtras.h"

Go to the source code of this file.

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::linalg
 

Functions

FailureOr< Operation * > mlir::linalg::winogradConv2D (RewriterBase &rewriter, linalg::Conv2DNhwcFhwcOp op, int64_t m, int64_t r)
 Convert linalg.conv_2d_nhwc_fhwc to Winograd Conv2D algorithm F(m x m, r x r). More...
 
FailureOr< Operation * > mlir::linalg::decomposeWinogradFilterTransformOp (RewriterBase &rewriter, linalg::WinogradFilterTransformOp op)
 Rewrite linalg.winograd_filter_transform. More...
 
FailureOr< Operation * > mlir::linalg::decomposeWinogradInputTransformOp (RewriterBase &rewriter, linalg::WinogradInputTransformOp op)
 Rewrite linalg.winograd_input_transform. More...
 
FailureOr< Operation * > mlir::linalg::decomposeWinogradOutputTransformOp (RewriterBase &rewriter, linalg::WinogradOutputTransformOp op)
 Rewrite linalg.winograd_output_transform. More...
 
void mlir::linalg::populateWinogradConv2DPatterns (RewritePatternSet &patterns, int64_t m, int64_t r)
 Patterns to apply Winograd Conv2D algorithm F(m x m, r x r). More...
 
void mlir::linalg::populateDecomposeWinogradOpsPatterns (RewritePatternSet &patterns)
 Patterns to decompose Winograd operators. More...
 

Variable Documentation

◆ cols

int64_t cols

◆ rows

int64_t rows

◆ scalarFactor

int64_t scalarFactor

Definition at line 201 of file WinogradConv2D.cpp.

◆ table

const float* table

Definition at line 198 of file WinogradConv2D.cpp.