<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in transform-op-split.mlir</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>1f77f01c - [mlir][Linalg] Add a Transform dialect NavigationOp op to match a list of ops or an interface.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir#1f77f01c</link>
        <description>[mlir][Linalg] Add a Transform dialect NavigationOp op to match a list of ops or an interface.This operation is a NavigationOp that simplifies the writing of transform IR.Since there is no way of refering to an interface by name, the current implementation usesan EnumAttr and depends on the interfaces it supports.In the future, it would be worthwhile to remove this dependence and generalize.Differential Revision: https://reviews.llvm.org/D130267

            List of files:
            /llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir</description>
        <pubDate>Thu, 21 Jul 2022 13:44:43 +0000</pubDate>
        <dc:creator>Nicolas Vasilache &lt;nicolas.vasilache@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>a5c802a4 - [mlir] fold more eagerly in structured op splitting</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir#a5c802a4</link>
        <description>[mlir] fold more eagerly in structured op splittingExisting implementation of structured op splitting creates severalaffine.apply and affine.min operations in its subshape computation.As these shapes are further used in data slice extraction, this may leadto slice shapes being dynamic even when the original shapes and thesplitting point are static. This is particularly visible when splittingis combined with further subsetting transformations such as tiling. Usecomposition and folding more aggressively in splitting to avoid this.In particular, introduce a `createComposedAffineMin` function that theaffine map used in &quot;min&quot; with the maps used by any `affine.apply` thatmay be feeding the operands to the &quot;min&quot;. This enables production ofmore static shapes. Also introduce a `createComposedFoldedAffineApply`function that combines the existing `createComposedAffineApply` within-place folding to propagate constants produced by zero-input affinemaps. Using these when splitting allows the subsequent canonicalizerpass to recover static shapes for structured ops.Reviewed By: nicolasvasilacheDifferential Revision: https://reviews.llvm.org/D129379

            List of files:
            /llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir</description>
        <pubDate>Fri, 08 Jul 2022 15:46:10 +0000</pubDate>
        <dc:creator>Alex Zinenko &lt;zinenko@google.com&gt;</dc:creator>
    </item>
<item>
        <title>ff6e5508 - [mlir] Structured transforms: introduce op splitting</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir#ff6e5508</link>
        <description>[mlir] Structured transforms: introduce op splittingIntroduce a new transformation on structured ops that splits the iterationspace into two parts along the specified dimension. The index at which thesplitting happens may be static or dynamic. This transformation can be seen asa rudimentary form of index-set splitting that only supports the splittingalong hyperplanes parallel to the iteration space hyperplanes, and is thereforedecomposable into per-dimension application.It is a key low-level transformation that enables independent scheduling fordifferent parts of the iteration space of the same op, which hasn&apos;t beenpossible previously. It may be used to implement, e.g., multi-sized tiling. Infuture, peeling can be implemented as a combination of split-off amountcomputation and splitting.The transformation is conceptually close to tiling in its separation of theiteration and data spaces, but cannot be currently implemented on top ofTilingInterface as the latter does not properly support `linalg.index`offsetting.Note that the transformation intentionally bypasses folding of`tensor.extract_slice` operations when creating them as this folding was foundto prevent repeated splitting of the same operation because due to internalassumptions about extract/insert_slice combination in dialect utilities.Reviewed By: nicolasvasilacheDifferential Revision: https://reviews.llvm.org/D129090

            List of files:
            /llvm-project-15.0.7/mlir/test/Dialect/Linalg/transform-op-split.mlir</description>
        <pubDate>Thu, 07 Jul 2022 11:10:40 +0000</pubDate>
        <dc:creator>Alex Zinenko &lt;zinenko@google.com&gt;</dc:creator>
    </item>
</channel>
</rss>
