Skip to content

Commit

Permalink
Skeleton of miopen.threadwise_copy lowering logic.
Browse files Browse the repository at this point in the history
Move from -convert-miopen-to-gpu to -miopen-lowering-step4.
  • Loading branch information
whchung committed Jun 6, 2020
1 parent 5e336db commit 40dd6df
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 4 deletions.
17 changes: 16 additions & 1 deletion mlir/include/mlir/Dialect/MIOpen/LowerMIOpenOps.h
Expand Up @@ -1805,7 +1805,7 @@ struct MovePosRewritePattern : public OpRewritePattern<miopen::MovePosOp> {
};

//===----------------------------------------------------------------------===//
// threadwiseGemm lowering.
// ThreadwiseGemm lowering.
//===----------------------------------------------------------------------===//

struct ThreadwiseGemmRewritePattern
Expand Down Expand Up @@ -1856,6 +1856,21 @@ struct ThreadwiseGemmRewritePattern
}
};

//===----------------------------------------------------------------------===//
// ThreadwiseGemm lowering.
//===----------------------------------------------------------------------===//

struct ThreadwiseCopyRewritePattern
: public OpRewritePattern<miopen::ThreadwiseCopyOp> {
using OpRewritePattern<miopen::ThreadwiseCopyOp>::OpRewritePattern;

LogicalResult matchAndRewrite(miopen::ThreadwiseCopyOp op,
PatternRewriter &b) const override {
op.erase();
return success();
}
};

//===----------------------------------------------------------------------===//
// Subview lowering.
//===----------------------------------------------------------------------===//
Expand Down
3 changes: 0 additions & 3 deletions mlir/lib/Conversion/MIOpenToGPU/MIOpenToGPU.cpp
Expand Up @@ -121,9 +121,6 @@ void LowerMIOpenOpsToGPUPass::runOnOperation() {

for (auto module : op.getOps<gpu::GPUModuleOp>()) {
module.walk([&](gpu::GPUFuncOp func) {

func.walk([&](miopen::ThreadwiseCopyOp op) { op.erase(); });

func.walk([&](miopen::GpuAllocOp op) {
auto loc = op.getLoc();
auto type = op.output().getType().cast<MemRefType>();
Expand Down
1 change: 1 addition & 0 deletions mlir/lib/Dialect/MIOpen/Transforms/LowerMIOpenOps.cpp
Expand Up @@ -93,6 +93,7 @@ void LowerMIOpenOpsStep3Pass::runOnOperation() {
void LowerMIOpenOpsStep4Pass::runOnOperation() {
OwningRewritePatternList patterns;
patterns.insert<ThreadwiseGemmRewritePattern>(&getContext());
patterns.insert<ThreadwiseCopyRewritePattern>(&getContext());

populateAffineToStdConversionPatterns(patterns, &getContext());
populateLoopToStdConversionPatterns(patterns, &getContext());
Expand Down

0 comments on commit 40dd6df

Please sign in to comment.