)]}'
{
  "commit": "abf008703c9c57d755bbea1197d9d8f062b0392e",
  "tree": "662c4be103ddb37d972308c8648d1052e0f5532d",
  "parents": [
    "52b21f8274f7e62d7c44e4c8b7b2147a00016bc0"
  ],
  "author": {
    "name": "Kunwar Grover",
    "email": "groverkss@gmail.com",
    "time": "Wed Jun 12 15:54:04 2024 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jun 12 14:54:04 2024 +0000"
  },
  "message": "[LinalgExt] Add online_attention op (#17536)\n\nThis patch adds a new online_attention op. This op represents a\r\npartially reduced attention op which can be tiled along it\u0027s k2\r\nreduction dimension. This op also has indexing maps, supports tiling on\r\nall dimensions other than k1 dimension, and can decompose based on any\r\ngiven indexing maps.\r\n\r\nThis patch also makes the CPU backend use online attention to decompose\r\nand tile reduction dimension, allowing it to be tiled along N and batch\r\ndimensions, and tiling using LLVMCPUTile.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9ae470db916c5e959854058fa53863d97e9dbb49",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/KernelDispatch.cpp",
      "new_id": "cc073548ba2ed59598ea88735b54dc3162ec7279",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/KernelDispatch.cpp"
    },
    {
      "type": "modify",
      "old_id": "5d935dcf5ea47e272c7da765cdbcbfd74ba67cdd",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/Passes.cpp",
      "new_id": "c843ec847d96f45751d199ade121e898ebf6d14d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/Passes.cpp"
    },
    {
      "type": "modify",
      "old_id": "4df56056a6f413691e5bd421678b90f0a5a46211",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/test/select_x86_64_lowering_strategy.mlir",
      "new_id": "6777e97511f5e15f5b7c1d3979aa4a8f988d438a",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/test/select_x86_64_lowering_strategy.mlir"
    },
    {
      "type": "modify",
      "old_id": "8675c431b3e27c90824b9bd92bbe8a7c205b823b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/BUILD.bazel",
      "new_id": "a771ee0f6a740a222f3a9e3fd3a85b76294cac77",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "c5c42ec41920d2b20d55d2bf16078c8d5a40264d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.cpp",
      "new_id": "34ce4f4c32d4a654566bc84e4cb4fba2bf7d6903",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "97caaabc46997309dec8131e8da87bd71507716f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.h",
      "new_id": "3d52ae62b26b52720df778e5e8d2161fc3136de3",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.h"
    },
    {
      "type": "modify",
      "old_id": "bf9694d9100271fde8303c35da3261316a09fc8b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.td",
      "new_id": "0eebd2e16976116ceaaa6ed485175ae7eb22bd1f",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.td"
    },
    {
      "type": "modify",
      "old_id": "00bb383245b78fb0c586e2970426cde8c7e52b00",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/TransformExtensions/LinalgExtExtensionsOps.cpp",
      "new_id": "923b30a8da73ed1f4425f7790a0f0b3d6457695c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/TransformExtensions/LinalgExtExtensionsOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "c3a6310f30a2f8ac51839f265606fce2a32ef1a4",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/TransformExtensions/LinalgExtExtensionsOps.td",
      "new_id": "84e588af9621fa865a3a569af4e62d916cee64df",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/TransformExtensions/LinalgExtExtensionsOps.td"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b4370e7ef1a0f95b9e9ccc495939214749ead2f2",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/AggregatedOpInterfaceImpl.cpp"
    },
    {
      "type": "modify",
      "old_id": "1d08da97399158df5e9002d0d15c1c2621241e43",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/BUILD.bazel",
      "new_id": "1a20a8f60f5aa735654f4b728eff98eb70d8474c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "668d28aec84ab050db8ac89d389f897c1ce066bb",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/CMakeLists.txt",
      "new_id": "19c7522f002a4d51e507af3f0ec03bf0833c113b",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "c70000f0977854d7ebc80a05008c4cfaa3c023e7",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/DecomposeAttention.cpp",
      "new_id": "2cd851dc58a06eef85677f5fe1bb941b8bcbf79f",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/DecomposeAttention.cpp"
    },
    {
      "type": "modify",
      "old_id": "43d44a377d83d0c4dcdff3e55f7c2bd9ca9150c5",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/Passes.h",
      "new_id": "165430a75c85008ee7a4dbf53270c7f9e8831b7b",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/Passes.h"
    },
    {
      "type": "modify",
      "old_id": "77bb10596821e328f13db1248b2a4810bcfe1699",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/Passes.td",
      "new_id": "ee801b62387081ed680c9e3d47310570c5485ca3",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/Passes.td"
    },
    {
      "type": "modify",
      "old_id": "4c862b58e5c7786664aa54bf08676b2df310d99f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TileAttention.cpp",
      "new_id": "df0d87e13fb24a7c329a2e2aacbc9ad2e8694df0",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TileAttention.cpp"
    },
    {
      "type": "modify",
      "old_id": "6b291c730bbead10b797e61c807176105cf89bfe",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TilingInterfaceImpl.cpp",
      "new_id": "2ecfd80f02e49b9a33342fe53f4cacfdd08f09ab",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TilingInterfaceImpl.cpp"
    },
    {
      "type": "modify",
      "old_id": "19176319e7d6ea467889b53ae26e1226e0cfef68",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/BUILD.bazel",
      "new_id": "fe21d60b99ff1f6a606153d6f8af8938ec63c3ad",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "92abdf79269cf27904dbdc3c23a5cc0f7c2b26e6",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/CMakeLists.txt",
      "new_id": "7ef5fd789a33dc8e4582c12defcfe8c1ef0962a1",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "945cff8e32a0ea5b5164d18d4ba2445c07c14cad",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/decompose_online_attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "f92bdb838da68a4c0c512f95bbca75be360f45ef",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/tiling.mlir",
      "new_id": "a974f3a3fba49aabdd03481c3192e31deba345d2",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/tiling.mlir"
    },
    {
      "type": "modify",
      "old_id": "7feee69c1eb233dac07d0f76b6e1aa1242561dfc",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/IndexingUtils.cpp",
      "new_id": "ac5f5c04aa23f2c8edce9701cc0a33d1b72d17fc",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/IndexingUtils.cpp"
    },
    {
      "type": "modify",
      "old_id": "cfba4ff51ece30e7d18af65ff55506bc4cc33f07",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/IndexingUtils.h",
      "new_id": "e66bc865f011b0744df5c105221abaa034e424a8",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/IndexingUtils.h"
    },
    {
      "type": "modify",
      "old_id": "d2313221246dff91de1f809e4daaa7ba47cd96a3",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/Utils.cpp",
      "new_id": "e6c3548e2f645ddf4b62249589878cb228fdb28d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/Utils.cpp"
    },
    {
      "type": "modify",
      "old_id": "9b40a5425d631cf5dfe0a4080e5f602e5b8010e7",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/Utils.h",
      "new_id": "eec973fcd2bd05350169487bb2ae90285102ca34",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Utils/Utils.h"
    }
  ]
}
