10 MPI_Comm_rank(mpi_comm, &location_id);
19 MPI_Comm_size(mpi_comm, &process_count);
31 std::vector<uint64_t> local_sizes(process_count, 0);
32 MPI_Allgather(&local_size,
44 std::vector<uint64_t> extents(process_count + 1, 0);
45 for (
size_t locJ = 1; locJ < process_count; ++locJ)
46 extents[locJ] = extents[locJ - 1] + local_sizes[locJ - 1];
47 extents[process_count] = extents[process_count - 1] + local_sizes.back();
int GetProcessCount(MPI_Comm mpi_comm)
std::vector< uint64_t > BuildLocationExtents(uint64_t local_size, MPI_Comm comm)
int GetLocationID(MPI_Comm mpi_comm)