void SpParHelper::GetSetSizes(const SpMat<IT,NT,DER> & Matrix, IT ** & sizes, MPI_Comm & comm1d) { vector<IT> essentials = Matrix.GetEssentials(); int index; MPI_Comm_rank(comm1d, &index); for(IT i=0; (unsigned)i < essentials.size(); ++i) { sizes[i][index] = essentials[i]; MPI_Allgather(MPI_IN_PLACE, 1, MPIType<IT>(), sizes[i], 1, MPIType<IT>(), comm1d); } }