#include "smpi_comm.hpp"
#include "smpi_datatype_derived.hpp"
#include "smpi_status.hpp"
+#include "smpi_coll.hpp"
#include "src/kernel/actor/ActorImpl.hpp"
#include "src/smpi/include/smpi_actor.hpp"
}
simgrid::smpi::ActorExt::init();
- int rank_traced = simgrid::s4u::this_actor::get_pid();
- TRACE_smpi_init(rank_traced, __func__);
+ TRACE_smpi_init(simgrid::s4u::this_actor::get_pid(), __func__);
smpi_bench_begin();
smpi_process()->mark_as_initialized();
int PMPI_Finalize()
{
smpi_bench_end();
- int rank_traced = simgrid::s4u::this_actor::get_pid();
+ aid_t rank_traced = simgrid::s4u::this_actor::get_pid();
TRACE_smpi_comm_in(rank_traced, __func__, new simgrid::instr::NoOpTIData("finalize"));
+ if(simgrid::config::get_value<bool>("smpi/finalization-barrier"))
+ simgrid::smpi::colls::barrier(MPI_COMM_WORLD);
+
smpi_process()->finalize();
TRACE_smpi_comm_out(rank_traced);