)]}'
{
  "commit": "7016b8c82b0f28c9688d27c0032349bbce2cd2cf",
  "tree": "652158ecdd8babef7457a0a38767f7833d632e66",
  "parents": [
    "0e90e29fd0ba91100df0a704e9999fe82060c5d6"
  ],
  "author": {
    "name": "Trevor Morris",
    "email": "tmorris@nvidia.com",
    "time": "Wed May 17 10:47:44 2023 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed May 17 10:47:44 2023 -0700"
  },
  "message": "Support mhlo.collective_permute with NCCL (#13502)\n\nAdds support for `mhlo.collective_permute`.\r\n\r\nDuring lowering, the `source_target_pairs` are converted into a table of\r\nsend/recv ids which can be indexed by the local rank. The send/recv id\r\npair is stored in the `param` field of HAL `CollectiveKind::SendRecv`.\r\nThe send and receive ids are packed as 16 bit integers into the 32 bit\r\nparam.\r\n\r\nFixes https://github.com/openxla/iree/issues/13100",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "88f9ac20bad8712f7bbfe2dc6e0b5d0501117f02",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Flow/IR/FlowOps.cpp",
      "new_id": "a62824cdef43368a41124bf8670de4fda438b39c",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Flow/IR/FlowOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "b6b4bd2c3ab0ee59f86c816e20051fa53b5ec281",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Flow/IR/FlowOps.td",
      "new_id": "a07382dea85ea66df0df5bab699862898a067422",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Flow/IR/FlowOps.td"
    },
    {
      "type": "modify",
      "old_id": "8b91334b8d9587c6ba1e81a6d8a3cd1cba38864a",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/HAL/IR/HALBase.td",
      "new_id": "6794a0cb9ee353b4a52bbfe0831d829b4f6325c1",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/HAL/IR/HALBase.td"
    },
    {
      "type": "modify",
      "old_id": "3ac6a1d9991e8061934c815897f56c0d8291d6b8",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Conversion/FlowToStream/Patterns.cpp",
      "new_id": "396eeac7e49d6595eaf699e9fa36765641b77471",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Conversion/FlowToStream/Patterns.cpp"
    },
    {
      "type": "modify",
      "old_id": "defb90a13578615f82742c721b88f687ed29f317",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/Conversion/FlowToStream/test/collective_ops.mlir",
      "new_id": "232fc73d651e2dd9c665dc08ac5ae2e236b66f7e",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/Conversion/FlowToStream/test/collective_ops.mlir"
    },
    {
      "type": "modify",
      "old_id": "5f9f961c69990d1f61010f36885f6c796ad9a954",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamBase.td",
      "new_id": "07ed78841d9a8d93d61abccc54bb09df6db6eced",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamBase.td"
    },
    {
      "type": "modify",
      "old_id": "2397b93c3bb9099fe78868185ab35bf09a0c5a10",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.cpp",
      "new_id": "9dd3fb531675aee8694c97bdf9dcf9ac98d94809",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/Dialect/Stream/IR/StreamOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "a8604cdd10d5fbe41b797d5ce5c395eae7a4aced",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/InputConversion/MHLO/ConvertCollectiveOps.cpp",
      "new_id": "78f77dc30110795644edb70ab9741353e3d32336",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/InputConversion/MHLO/ConvertCollectiveOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "e8ab94872ea5ee443a615b9a48910043f8a27d61",
      "old_mode": 33188,
      "old_path": "compiler/src/iree/compiler/InputConversion/MHLO/test/convert_collective_ops.mlir",
      "new_id": "2ffe3a0a1fb77d76128e3b85fc9464b51ebbab88",
      "new_mode": 33188,
      "new_path": "compiler/src/iree/compiler/InputConversion/MHLO/test/convert_collective_ops.mlir"
    },
    {
      "type": "modify",
      "old_id": "2d746bff3f33332e2a902e628cc3f40192d7faf4",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/command_buffer.c",
      "new_id": "fa57dc874833dd052f50afe74557ec609cef1864",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/command_buffer.c"
    },
    {
      "type": "modify",
      "old_id": "39879d3463bb1c270f2a0136cda073542e5827b0",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/command_buffer.h",
      "new_id": "5aa699c985f9eaf42544a89c0dfa631663b3a89f",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/command_buffer.h"
    },
    {
      "type": "modify",
      "old_id": "6b985e1feeb1020bfa35b80aac03042dd6656f89",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/command_buffer_validation.c",
      "new_id": "46ebea4788236268bf2b6c1a5fab5aae3dcf80c8",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/command_buffer_validation.c"
    },
    {
      "type": "modify",
      "old_id": "640daf325ccb79c328d907b8e68671e281427337",
      "old_mode": 33188,
      "old_path": "runtime/src/iree/hal/drivers/cuda/nccl_channel.c",
      "new_id": "8948e8413f02c7be5f4ad9db5eeb3e766b63cdb6",
      "new_mode": 33188,
      "new_path": "runtime/src/iree/hal/drivers/cuda/nccl_channel.c"
    }
  ]
}
