)]}'
{
  "commit": "b7c415254fe87b025bf4e8b671a37265ee831cb2",
  "tree": "78429f95214d4ec3028f30f76c6107d237391733",
  "parents": [
    "46326ef4b2bab02a9bda7e2eed810df08d8ca021"
  ],
  "author": {
    "name": "Kunwar Grover",
    "email": "groverkss@gmail.com",
    "time": "Sat Mar 09 18:49:50 2024 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sat Mar 09 18:49:50 2024 +0000"
  },
  "message": "[LinalgExt] Add scaling to attention op (#16679)\n\nThis commit add support for a scale input to the attention\r\nop. This is to follow semantics of scaled dot product\r\nsemantics for attention like explained in\r\nhttps://paperswithcode.com/method/scaled\r\n\r\nRight now we only thread through the lower part of the\r\nstack, meaning linalg ext ops and its code generation.\r\nWe also need to eventually fix upper layers to get the\r\nscale from the input. For now we only support the PyTorch\r\ndefault scale case--rsqrt(d).\r\n\r\n---------\r\n\r\nCo-authored-by: Lei Zhang \u003cantiagainst@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e09363f520c6a0a4ad41f51e7be05ea8ed1eabcb",
      "old_mode": 33188,
      "old_path": "compiler/plugins/input/Torch/InputConversion/ConvertTMTensorToLinalgExt.cpp",
      "new_id": "05988db5f8f2516325be5344b4c27b3149ecc656",
      "new_mode": 33188,
      "new_path": "compiler/plugins/input/Torch/InputConversion/ConvertTMTensorToLinalgExt.cpp"
    },
    {
      "type": "modify",
      "old_id": "0d895ab48e2886c9311d926f30325025ab0cd0c9",
      "old_mode": 33188,
      "old_path": "compiler/plugins/input/Torch/InputConversion/test/attention.mlir",
      "new_id": "17000c051a246eab67a31869de7ea3f29f12c08c",
      "new_mode": 33188,
      "new_path": "compiler/plugins/input/Torch/InputConversion/test/attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "d295614ad3d5c95537fb9d51613a8dadbd27b854",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/test/select_x86_64_lowering_strategy.mlir",
      "new_id": "7af1e58e8e864ffaf71e54b53c9adbeb50d6e9d6",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMCPU/test/select_x86_64_lowering_strategy.mlir"
    },
    {
      "type": "modify",
      "old_id": "ce450ba2c197cf203f57a54166f1440ccac17ef0",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention.mlir",
      "new_id": "dc7c5330c2da2555fbc8f08dfbe2508da1b3502f",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "a871167ff9cbedb2f4ac2400328d788a4967638e",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_mfma.mlir",
      "new_id": "6148fc3062704fda6a542625e0ec75f3e18bd14d",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_mfma.mlir"
    },
    {
      "type": "modify",
      "old_id": "9bf926b6557f86b6ead4418ff1d5c9709eadf490",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_mfma_transform_spec.mlir",
      "new_id": "486d2b99fb93c741f8e8a1db9e2156f8aa9a6f9e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_mfma_transform_spec.mlir"
    },
    {
      "type": "modify",
      "old_id": "1fd8749494230829902896243b886260ec8c2a3d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_transform_spec.mlir",
      "new_id": "f819a309711fc026a6b9c4637a1d5ce3cbe6236e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/LLVMGPU/test/attention_transform_spec.mlir"
    },
    {
      "type": "modify",
      "old_id": "95003be70b31e74ed3595eb543450b1b90a36f6d",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.cpp",
      "new_id": "662992077229e2ecac42b612f91b64f5c5a145c8",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "36207462cb1313abc569bbab29add07572e035b3",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.td",
      "new_id": "4f9ad3a17306219b88341dcd2b483658250e1b75",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/LinalgExtOps.td"
    },
    {
      "type": "modify",
      "old_id": "8c906387a3e56b76e09cd85c697825dd8726b97f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/invalid.mlir",
      "new_id": "efce33bbd9c1d4a53d0a59b8cbae7570f202052e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/invalid.mlir"
    },
    {
      "type": "modify",
      "old_id": "a5a006e9fd87d2283a245cffb79646f3b89e0edf",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/roundtrip.mlir",
      "new_id": "8d6a5759c0feb10b6365de8d049ca0aa6ff17c97",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/roundtrip.mlir"
    },
    {
      "type": "modify",
      "old_id": "b474608e4d65aed2400cab4929786ea4eb6ed33f",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/tiling.mlir",
      "new_id": "31db8b2838bdd20944a78c6b20be27f3253a60b8",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/IR/test/tiling.mlir"
    },
    {
      "type": "modify",
      "old_id": "4c15d7543893fb29f8abbbdcdc1812c8e2855d69",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TileAndDecomposeAttention.cpp",
      "new_id": "657e16f80a846490e3054dde240d11d8c13c8617",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/TileAndDecomposeAttention.cpp"
    },
    {
      "type": "modify",
      "old_id": "0aa8de7100e7ecda8f50398009a01e5a82b2ff80",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/tile_and_decompose_attention.mlir",
      "new_id": "91424fc37c29e888871c16a6ff4f93ab439a4a41",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/LinalgExt/Transforms/test/tile_and_decompose_attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "cbb2ded687c6617533d3dbb194fda21a759f3240",
      "old_mode": 33188,
      "old_path": "tests/e2e/linalg_ext_ops/attention.mlir",
      "new_id": "50fb8046ddf2a6577f50598e2cc693a1d55827a2",
      "new_mode": 33188,
      "new_path": "tests/e2e/linalg_ext_ops/attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "b103ba62900aeadf189be46cb140e58f53a0e5d6",
      "old_mode": 33188,
      "old_path": "tests/transform_dialect/cpu/attention.mlir",
      "new_id": "51cbd8e73aeece986c667dbe0f3afbd932a50b56",
      "new_mode": 33188,
      "new_path": "tests/transform_dialect/cpu/attention.mlir"
    },
    {
      "type": "modify",
      "old_id": "1bfb3d3d88d78c8cc35659986b55f1ea78f72836",
      "old_mode": 33188,
      "old_path": "tests/transform_dialect/cpu/attention_codegen_spec.mlir",
      "new_id": "d7689368daa83cb434e300a02f498d35d98134ae",
      "new_mode": 33188,
      "new_path": "tests/transform_dialect/cpu/attention_codegen_spec.mlir"
    }
  ]
}
