)]}'
{
  "commit": "e6ff0b99c8ba6ade02a8a44f06f7920f7033133a",
  "tree": "5c5d19c6bc7d6e6dce5c1798222944c2d3c3dc65",
  "parents": [
    "dfaf12c1a56f1ff69bda1fdb7a42399eb1c9d96e"
  ],
  "author": {
    "name": "Stanley Winata",
    "email": "68087699+raikonenfnu@users.noreply.github.com",
    "time": "Thu Aug 29 07:05:18 2024 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Aug 29 15:05:18 2024 +0100"
  },
  "message": "[Codegen] Resolve constantOp with multiple layouts users. (#18354)\n\nMain motivation is to handle distribution of constantOp who has users\r\nwith different layouts.\r\n\r\nOriginal use case is to ensure we can distribute attention when the tile\r\nsize for M,K1,N is the same. Which means the init of 1st contract, and\r\nIV\u0027s init uses the same constantOp.\r\n\r\nSince constantOp can only hold a single layout, but multiple to_layout\r\nops with different layouts, for each user, there will be non resolved\r\nto_layout op(s). only one of the to_layout op can be resolved properly,\r\nthe rest would be a \"non trivial\" resolution since layouts are\r\ndifferent.\r\n\r\nTo solve this issue, we introduce a mechanism that detect these cases\r\nand make a copy of the arith.constant that get used by other users, when\r\nwe are trying to resolve for the current constantOp.\r\n\r\nSigned-off-by: Stanley Winata \u003cstanley.winata@amd.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d197d64b94723fd11ec2c3f0739fa149bfe6a130",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/gpu_vector_distribution.mlir",
      "new_id": "be2968ddf0d07f53ff4075bca767f01a7598a12e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/GPU/test/gpu_vector_distribution.mlir"
    },
    {
      "type": "modify",
      "old_id": "03ee0011627b6526853b786b28cc24df149fb20b",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Codegen/Common/VectorLayoutAnalysis.cpp",
      "new_id": "fc1a1d246677d3c5fe6ab454ce2718e16ea84cce",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Codegen/Common/VectorLayoutAnalysis.cpp"
    }
  ]
}
