message: Mark collective-permute-start and collective-permute-done as having side effect to avoid being remat.
diff: @@ -1530,6 +1530,8 @@ bool HloInstruction::HasSideEffectNoRecurse() const {
  case HloOpcode::kInfeed:
  case HloOpcode::kOutfeed:
  case HloOpcode::kTrace:
  + case HloOpcode::kCollectivePermuteStart:
  + case HloOpcode::kCollectivePermuteDone:
  return true;
  case HloOpcode::kAllReduce:
  return channel_id().has_value() ||
  