Home
last modified time | relevance | path

Searched refs:ParallelOp (Results 1 – 25 of 39) sorted by relevance

12

/external/llvm-project/mlir/lib/Dialect/OpenACC/IR/
DOpenACC.cpp153 return isa<acc::ParallelOp>(op) || isa<acc::LoopOp>(op); in isComputeOperation()
205 async = parseOptionalOperandAndType(parser, ParallelOp::getAsyncKeyword(), in parseParallelOp()
211 if (failed(parseOperandList(parser, ParallelOp::getWaitKeyword(), in parseParallelOp()
217 parser, ParallelOp::getNumGangsKeyword(), result); in parseParallelOp()
223 parser, ParallelOp::getNumWorkersKeyword(), result); in parseParallelOp()
229 parser, ParallelOp::getVectorLengthKeyword(), result); in parseParallelOp()
234 if (failed(parseOptionalOperand(parser, ParallelOp::getIfKeyword(), ifCond, in parseParallelOp()
239 if (failed(parseOptionalOperand(parser, ParallelOp::getSelfKeyword(), in parseParallelOp()
244 if (failed(parseOperandList(parser, ParallelOp::getReductionKeyword(), in parseParallelOp()
250 if (failed(parseOperandList(parser, ParallelOp::getCopyKeyword(), in parseParallelOp()
[all …]
/external/llvm-project/mlir/lib/Dialect/SCF/Transforms/
DParallelLoopFusion.cpp26 static bool hasNestedParallelOp(ParallelOp ploop) { in hasNestedParallelOp()
28 ploop.getBody()->walk([](ParallelOp) { return WalkResult::interrupt(); }); in hasNestedParallelOp() argument
33 static bool equalIterationSpaces(ParallelOp firstPloop, in equalIterationSpaces()
34 ParallelOp secondPloop) { in equalIterationSpaces()
52 ParallelOp firstPloop, ParallelOp secondPloop, in haveNoReadsAfterWriteExceptSameIndex()
92 verifyDependencies(ParallelOp firstPloop, ParallelOp secondPloop, in verifyDependencies()
106 isFusionLegal(ParallelOp firstPloop, ParallelOp secondPloop, in isFusionLegal()
116 static void fuseIfLegal(ParallelOp firstPloop, ParallelOp secondPloop, in fuseIfLegal()
135 SmallVector<SmallVector<ParallelOp, 8>, 1> ploopChains{{}}; in naivelyFuseParallelOps()
141 if (auto ploop = dyn_cast<ParallelOp>(op)) { in naivelyFuseParallelOps()
[all …]
DParallelLoopTiling.cpp39 void mlir::scf::tileParallelLoop(ParallelOp op, ArrayRef<int64_t> tileSizes) { in tileParallelLoop()
60 auto outerLoop = b.create<ParallelOp>(op.getLoc(), op.lowerBound(), in tileParallelLoop()
108 auto innerLoop = b.create<ParallelOp>( in tileParallelLoop()
131 SmallVectorImpl<ParallelOp> &result) { in getInnermostPloops()
139 if (auto ploop = dyn_cast<ParallelOp>(op)) { in getInnermostPloops()
161 SmallVector<ParallelOp, 2> innermostPloops; in runOnFunction()
163 for (ParallelOp ploop : innermostPloops) { in runOnFunction()
DLoopSpecialization.cpp24 using scf::ParallelOp;
30 static void specializeParallelLoopForUnrolling(ParallelOp op) { in specializeParallelLoopForUnrolling()
97 [](ParallelOp op) { specializeParallelLoopForUnrolling(op); }); in runOnFunction()
/external/llvm-project/mlir/lib/Conversion/SCFToOpenMP/
DSCFToOpenMP.cpp25 struct ParallelOpLowering : public OpRewritePattern<scf::ParallelOp> {
26 using OpRewritePattern<scf::ParallelOp>::OpRewritePattern;
28 LogicalResult matchAndRewrite(scf::ParallelOp parallelOp, in matchAndRewrite()
66 SmallVector<scf::ParallelOp, 4> topLevelParallelOps; in insertOpenMPParallel()
67 func.walk([&topLevelParallelOps](scf::ParallelOp parallelOp) { in insertOpenMPParallel()
69 if (!parallelOp->getParentOfType<scf::ParallelOp>()) in insertOpenMPParallel()
74 for (scf::ParallelOp parallelOp : topLevelParallelOps) { in insertOpenMPParallel()
76 auto omp = builder.create<omp::ParallelOp>(parallelOp.getLoc()); in insertOpenMPParallel()
88 target.addIllegalOp<scf::ParallelOp>(); in applyPatterns()
90 [](scf::YieldOp op) { return !isa<scf::ParallelOp>(op->getParentOp()); }); in applyPatterns()
/external/llvm-project/mlir/lib/Dialect/GPU/Transforms/
DParallelLoopMapper.cpp43 LogicalResult setMappingAttr(scf::ParallelOp ploopOp, in setMappingAttr()
122 static void mapParallelOp(ParallelOp parallelOp, in mapParallelOp()
126 ((mappingLevel == MapGrid) && parallelOp->getParentOfType<ParallelOp>())) in mapParallelOp()
143 if (ParallelOp nested = dyn_cast<ParallelOp>(op)) in mapParallelOp()
149 region.walk([](ParallelOp parallelOp) { mapParallelOp(parallelOp); }); in greedilyMapParallelSCFToGPU()
/external/tensorflow/tensorflow/compiler/mlir/hlo/lib/Dialect/mhlo/transforms/
Dlhlo_legalize_to_parallel_loops.cc139 scf::ParallelOp MakeLoopOverShape(Location loc, Value shaped_value, in MakeLoopOverShape()
153 return b->create<scf::ParallelOp>(loc, lower, upper, step); in MakeLoopOverShape()
255 scf::ParallelOp outer; in CreateReduceOpInNestedParallelLoops()
257 outer = rewriter->create<scf::ParallelOp>(loc, parallel_lower, in CreateReduceOpInNestedParallelLoops()
261 scf::ParallelOp inner = rewriter->create<scf::ParallelOp>( in CreateReduceOpInNestedParallelLoops()
367 scf::ParallelOp output_loop, window_loop; in matchAndRewrite()
382 std::pair<scf::ParallelOp, scf::ParallelOp>
406 auto window_loop = rewriter->create<scf::ParallelOp>( in CreateParallelLoopsToTraverseOutputAndWindow()
416 lmhlo::ReduceWindowOp reduce_window_op, scf::ParallelOp output_loop, in CreateReduceOpInNestedParallelLoops()
417 scf::ParallelOp window_loop, ConversionPatternRewriter* rewriter) const { in CreateReduceOpInNestedParallelLoops()
[all …]
/external/llvm-project/mlir/lib/Conversion/SCFToGPU/
DSCFToGPU.cpp286 struct ParallelToGpuLaunchLowering : public OpRewritePattern<ParallelOp> {
287 using OpRewritePattern<ParallelOp>::OpRewritePattern;
289 LogicalResult matchAndRewrite(ParallelOp parallelOp,
378 ParallelOp parallelOp, gpu::LaunchOp launchOp, in processParallelLoop()
525 namedAttr.first == ParallelOp::getOperandSegmentSizeAttr()) in processParallelLoop()
567 ParallelToGpuLaunchLowering::matchAndRewrite(ParallelOp parallelOp, in matchAndRewrite()
571 if (auto parentLoop = parallelOp->getParentOfType<ParallelOp>()) in matchAndRewrite()
602 if (auto nestedParallel = dyn_cast<ParallelOp>(op)) { in matchAndRewrite()
650 target.addDynamicallyLegalOp<scf::ParallelOp>([](scf::ParallelOp parallelOp) { in configureParallelLoopToGPULegality()
/external/llvm-project/mlir/lib/Dialect/SCF/
DSCF.cpp804 void ParallelOp::build( in build()
814 ParallelOp::getOperandSegmentSizeAttr(), in build()
833 ParallelOp::ensureTerminator(*bodyRegion, builder, result.location); in build()
836 void ParallelOp::build( in build()
856 static LogicalResult verify(ParallelOp op) { in verify()
888 << ParallelOp::getOperationName() << "'"; in verify()
969 ParallelOp::getOperandSegmentSizeAttr(), in parseParallelOp()
988 static void print(OpAsmPrinter &p, ParallelOp op) { in print()
997 op.getAttrs(), /*elidedAttrs=*/ParallelOp::getOperandSegmentSizeAttr()); in print()
1000 Region &ParallelOp::getLoopBody() { return region(); } in getLoopBody()
[all …]
/external/llvm-project/mlir/include/mlir/Dialect/SCF/
DTransforms.h28 class ParallelOp; variable
47 void tileParallelLoop(ParallelOp op, llvm::ArrayRef<int64_t> tileSizes);
DUtils.h26 class ParallelOp; variable
DSCF.h50 ParallelOp getParallelForInductionVarOwner(Value val);
/external/llvm-project/mlir/include/mlir/Dialect/GPU/
DParallelLoopMapper.h36 class ParallelOp; variable
60 LogicalResult setMappingAttr(scf::ParallelOp ploopOp,
/external/llvm-project/mlir/lib/Conversion/OpenMPToLLVM/
DOpenMPToLLVM.cpp50 patterns.insert<RegionOpConversion<omp::ParallelOp>, in populateOpenMPToLLVMConversionPatterns()
72 target.addDynamicallyLegalOp<omp::ParallelOp, omp::WsLoopOp>( in runOnOperation()
/external/llvm-project/mlir/lib/Conversion/SCFToStandard/
DSCFToStandard.cpp197 struct ParallelLowering : public OpRewritePattern<mlir::scf::ParallelOp> {
198 using OpRewritePattern<mlir::scf::ParallelOp>::OpRewritePattern;
200 LogicalResult matchAndRewrite(mlir::scf::ParallelOp parallelOp,
404 ParallelLowering::matchAndRewrite(ParallelOp parallelOp, in matchAndRewrite()
584 target.addIllegalOp<scf::ForOp, scf::IfOp, scf::ParallelOp, scf::WhileOp>(); in runOnOperation()
/external/llvm-project/mlir/lib/Dialect/OpenMP/IR/
DOpenMPDialect.cpp40 void ParallelOp::build(OpBuilder &builder, OperationState &state, in build()
42 ParallelOp::build( in build()
118 static LogicalResult verifyParallelOp(ParallelOp op) { in verifyParallelOp()
125 static void printParallelOp(OpAsmPrinter &p, ParallelOp op) { in printParallelOp()
/external/llvm-project/mlir/lib/Dialect/Async/Transforms/
DAsyncParallelFor.cpp83 struct AsyncParallelForRewrite : public OpRewritePattern<scf::ParallelOp> {
89 LogicalResult matchAndRewrite(scf::ParallelOp op,
109 AsyncParallelForRewrite::matchAndRewrite(scf::ParallelOp op, in matchAndRewrite()
/external/llvm-project/mlir/lib/Dialect/Linalg/Utils/
DUtils.cpp83 template struct mlir::linalg::GenerateLoopNest<scf::ParallelOp>;
237 edsc::OperationBuilder<scf::ParallelOp>(
267 edsc::OperationBuilder<scf::ParallelOp>(
314 void GenerateLoopNest<scf::ParallelOp>::doit( in doit()
/external/tensorflow/tensorflow/compiler/mlir/tools/kernel_gen/
Dkernel_creator.cc74 using mlir::scf::ParallelOp;
137 getFunction().walk([&](ParallelOp op) { in runOnFunction()
168 llvm::SmallVector<ParallelOp, 2> innermostPloops; in runOnFunction()
171 for (ParallelOp ploop : innermostPloops) { in runOnFunction()
/external/tensorflow/tensorflow/compiler/mlir/tools/kernel_gen/transforms/
Dfuse_inner_parallel_loops_pass.cc31 getFunction().walk([](mlir::scf::ParallelOp op) { in runOnFunction()
Dparallel_loops_to_sequential.cc36 target.addIllegalOp<mlir::scf::ParallelOp>(); in runOnFunction()
/external/llvm-project/mlir/include/mlir/Transforms/
DLoopUtils.h34 class ParallelOp; variable
247 void collapseParallelLoops(scf::ParallelOp loops,
/external/llvm-project/mlir/lib/Transforms/
DParallelLoopCollapsing.cpp27 module->walk([&](scf::ParallelOp op) { in runOnOperation()
/external/tensorflow/tensorflow/compiler/xla/service/mlir_gpu/
Dpasses.cc93 llvm::dyn_cast<mlir::scf::ParallelOp>(block->getParentOp())) { in findStore()
324 getFunction().walk([](mlir::scf::ParallelOp op) { in runOnFunction()
334 getFunction().walk([&](mlir::scf::ParallelOp op) { in runOnFunction()
/external/llvm-project/mlir/include/mlir/Dialect/Linalg/EDSC/
DBuilders.h27 class ParallelOp; variable

12