[mlir][Tensor] Move ParallelInsertSlice to the tensor dialectThis is moslty NFC and will allow tensor.parallel_insert_slice to gainrank-reducing semantics by reusing the vast majority of the tenso
[mlir][Tensor] Move ParallelInsertSlice to the tensor dialectThis is moslty NFC and will allow tensor.parallel_insert_slice to gainrank-reducing semantics by reusing the vast majority of the tensor.insert_slice impl.Depends on D128857Differential Revision: https://reviews.llvm.org/D128920
show more ...
[mlir][SCF] Add a ParallelCombiningOpInterface to decouple scf::PerformConcurrently from its contained operationsThis allows purging references of scf.ForeachThreadOp and scf.PerformConcurrentlyOp
[mlir][SCF] Add a ParallelCombiningOpInterface to decouple scf::PerformConcurrently from its contained operationsThis allows purging references of scf.ForeachThreadOp and scf.PerformConcurrentlyOp fromParallelInsertSliceOp.This will allowmoving the op closer to tensor::InsertSliceOp with which it should share much morecode.In the future, the decoupling will also allow extending the type of ops that can be used in theparallel combinator as well as semantics related to multiple concurrent inserts to the sameresult.Differential Revision: https://reviews.llvm.org/D128857
[mlir][SCF][bufferize][NFC] Implement resolveConflicts for ParallelInsertSliceOpThis was previous implemented as part of the BufferizableOpInterface of ForEachThreadOp. Moving the implementation to
[mlir][SCF][bufferize][NFC] Implement resolveConflicts for ParallelInsertSliceOpThis was previous implemented as part of the BufferizableOpInterface of ForEachThreadOp. Moving the implementation to ParallelInsertSliceOp to be consistent with the remaining ops and to have a nice example op that can serve as a blueprint for other ops.Differential Revision: https://reviews.llvm.org/D128666
[SCF] Add thread_dim_mapping attribute to scf.foreach_threadAn optional thread_dim_mapping index array attribute specifies for eachvirtual thread dimension, how it remaps 1-1 to a set of concrete
[SCF] Add thread_dim_mapping attribute to scf.foreach_threadAn optional thread_dim_mapping index array attribute specifies for eachvirtual thread dimension, how it remaps 1-1 to a set of concrete processingelement resources (e.g. a CUDA grid dimension or a level of concrete nestedasync parallelism). At this time, the specification is backend-dependent andis not verified by the op, beyond being an index array attribute.It is the reponsibility of the lowering to interpret the index array in thecontext of the concrete target the op is lowered to, or to ignore it whenthe specification is ill-formed or unsupported for a particular target.Differential Revision: https://reviews.llvm.org/D128633
[mlir] Flip more uses to prefixed accessor form (NFC).Try to keep the final flip small. Need to flip MemRef as there are manytemplated cases with it and Tensor.
Revert "Don't use Optional::hasValue (NFC)"This reverts commit aa8feeefd3ac6c78ee8f67bf033976fc7d68bc6d.
Don't use Optional::hasValue (NFC)
[mlir][SCF] Fold tensor.cast feeding into scf.foreach_thread.parallel_insert_sliceDifferential Revision: https://reviews.llvm.org/D128247
[mlir][SCF] Add scf::ForeachThread canonicalization.This revision adds the necessary plumbing for canonicalizing scf::ForeachThread with the`AffineOpSCFCanonicalizationPattern`.In the process the
[mlir][SCF] Add scf::ForeachThread canonicalization.This revision adds the necessary plumbing for canonicalizing scf::ForeachThread with the`AffineOpSCFCanonicalizationPattern`.In the process the `loopMatcher` helper is updated to take OpFoldResult instead of just values.This allows composing various scenarios without the need for an artificial builder.Differential Revision: https://reviews.llvm.org/D128244
[mlir] Don't use Optional::getValue (NFC)
[mlir] Don't use Optional::hasValue (NFC)
[mlir] move SCF headers to SCF/{IR,Transforms} respectivelyThis aligns the SCF dialect file layout with the majority of the dialects.Reviewed By: jpienaarDifferential Revision: https://reviews.
[mlir] move SCF headers to SCF/{IR,Transforms} respectivelyThis aligns the SCF dialect file layout with the majority of the dialects.Reviewed By: jpienaarDifferential Revision: https://reviews.llvm.org/D128049