diff --git a/src/parallel_io.c b/src/parallel_io.c index 66c9203e39e56d520eeace8858b0c618b45e6a22..ce46d8b2dde76e28be468ac89ba0e0bf74edf786 100644 --- a/src/parallel_io.c +++ b/src/parallel_io.c @@ -645,13 +645,13 @@ void write_output_parallel(struct engine* e, const char* baseName, size_t N[NUM_PARTICLE_TYPES] = {Ngas, Ndm, 0}; long long N_total[NUM_PARTICLE_TYPES] = {0}; long long offset[NUM_PARTICLE_TYPES] = {0}; - MPI_Exscan(&N, &offset, NUM_PARTICLE_TYPES, MPI_LONG_LONG, MPI_SUM, comm); + MPI_Exscan(&N, &offset, NUM_PARTICLE_TYPES, MPI_LONG_LONG_INT, MPI_SUM, comm); for (int ptype = 0; ptype < NUM_PARTICLE_TYPES; ++ptype) N_total[ptype] = offset[ptype] + N[ptype]; /* The last rank now has the correct N_total. Let's * broadcast from there */ - MPI_Bcast(&N_total, 6, MPI_LONG_LONG, mpi_size - 1, comm); + MPI_Bcast(&N_total, 6, MPI_LONG_LONG_INT, mpi_size - 1, comm); /* Now everybody konws its offset and the total number of * particles of each diff --git a/src/serial_io.c b/src/serial_io.c index b9ad0fbaa856a889d3f84bb42013282f3640fd5e..49dd945006d5907c43d58babc28f72914484a742 100644 --- a/src/serial_io.c +++ b/src/serial_io.c @@ -536,7 +536,7 @@ void read_ic_serial(char* fileName, const struct UnitSystem* internal_units, /* Now need to broadcast that information to all ranks. */ MPI_Bcast(flag_entropy, 1, MPI_INT, 0, comm); MPI_Bcast(periodic, 1, MPI_INT, 0, comm); - MPI_Bcast(&N_total, NUM_PARTICLE_TYPES, MPI_LONG_LONG, 0, comm); + MPI_Bcast(&N_total, NUM_PARTICLE_TYPES, MPI_LONG_LONG_INT, 0, comm); MPI_Bcast(dim, 3, MPI_DOUBLE, 0, comm); MPI_Bcast(ic_units, sizeof(struct UnitSystem), MPI_BYTE, 0, comm); @@ -694,12 +694,12 @@ void write_output_serial(struct engine* e, const char* baseName, size_t N[NUM_PARTICLE_TYPES] = {Ngas, Ndm, 0}; long long N_total[NUM_PARTICLE_TYPES] = {0}; long long offset[NUM_PARTICLE_TYPES] = {0}; - MPI_Exscan(&N, &offset, NUM_PARTICLE_TYPES, MPI_LONG_LONG, MPI_SUM, comm); + MPI_Exscan(&N, &offset, NUM_PARTICLE_TYPES, MPI_LONG_LONG_INT, MPI_SUM, comm); for (int ptype = 0; ptype < NUM_PARTICLE_TYPES; ++ptype) N_total[ptype] = offset[ptype] + N[ptype]; /* The last rank now has the correct N_total. Let's broadcast from there */ - MPI_Bcast(&N_total, 6, MPI_LONG_LONG, mpi_size - 1, comm); + MPI_Bcast(&N_total, 6, MPI_LONG_LONG_INT, mpi_size - 1, comm); /* Now everybody konws its offset and the total number of particles of each * type */