in src/torch_ucc.cpp [136:148]
void check_tensor(const std::vector<at::Tensor>& tensors) {
if (tensors.size() != 1) {
throw std::runtime_error("ProcessGroupUCC takes 1 tensor");
}
if (!tensors[0].is_contiguous()) {
throw std::runtime_error(
"ProcessGroupUCC input tensor has to be contiguous");
}
if (tensors[0].is_sparse()) {
throw std::runtime_error("ProcessGroupUCC input tensor has to be dense");
}
// TODO: check cuda case
}