diff --git a/tensorflow/core/nccl/nccl_manager.cc b/tensorflow/core/nccl/nccl_manager.cc index c3d6af92f93..b5c07981d81 100644 --- a/tensorflow/core/nccl/nccl_manager.cc +++ b/tensorflow/core/nccl/nccl_manager.cc @@ -703,6 +703,9 @@ void NcclManager::LoopKernelLaunches(NcclStream* nccl_stream) { if (p->output) { recvbuff = const_cast(p->output->tensor_data().data()); num_elements = p->output->NumElements(); + } else { + // Operate in-place if no output (for the src node). + recvbuff = const_cast(sendbuff); } if (num_elements < 0) { p->done_callback(errors::Internal(