simgrid::smpi::ActorExt::init();
TRACE_smpi_init(simgrid::s4u::this_actor::get_pid(), __func__);
+ smpi_mpi_init();
smpi_bench_begin();
smpi_process()->mark_as_initialized();
- smpi_mpi_init();
CHECK_COLLECTIVE(smpi_process()->comm_world(), "MPI_Init")
return MPI_SUCCESS;
smpi_process()->mark_as_finalizing();
TRACE_smpi_comm_in(rank_traced, __func__, new simgrid::instr::NoOpTIData("finalize"));
- if(simgrid::config::get_value<bool>("smpi/finalization-barrier"))
+ if (simgrid::config::get_value<bool>("smpi/barrier-finalization"))
simgrid::smpi::colls::barrier(MPI_COMM_WORLD);
smpi_process()->finalize();
int PMPI_Get_processor_name(char *name, int *resultlen)
{
int len = std::min(static_cast<int>(sg_host_self()->get_name().size()), MPI_MAX_PROCESSOR_NAME - 1);
- std::string(sg_host_self()->get_name()).copy(name, len);
+ sg_host_self()->get_name().copy(name, len);
name[len] = '\0';
*resultlen = len;
} else if (not datatype->is_valid()) {
return MPI_ERR_TYPE;
} else {
- size_t size = datatype->size();
- *count = (size == 0) ? 0
- : (status->count % size != 0) ? MPI_UNDEFINED
- : simgrid::smpi::Status::get_count(status, datatype);
+ if (datatype->size() == 0) {
+ *count = 0;
+ } else if (status->count % datatype->size() != 0) {
+ *count = MPI_UNDEFINED;
+ } else {
+ *count = simgrid::smpi::Status::get_count(status, datatype);
+ }
return MPI_SUCCESS;
}
}