X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/c59ffc128e66d0dae53c0c44968f04d65a58ba0d..246388d21097723092dfc24d709231ff2b493010:/src/smpi/internals/smpi_replay.cpp diff --git a/src/smpi/internals/smpi_replay.cpp b/src/smpi/internals/smpi_replay.cpp index c28efd1f31..774cec5574 100644 --- a/src/smpi/internals/smpi_replay.cpp +++ b/src/smpi/internals/smpi_replay.cpp @@ -64,8 +64,7 @@ public: typedef std::tuple req_key_t; typedef std::unordered_map>> req_storage_t; - -static void log_timed_action(simgrid::xbt::ReplayAction& action, double clock) +void log_timed_action(simgrid::xbt::ReplayAction& action, double clock) { if (XBT_LOG_ISENABLED(smpi_replay, xbt_log_priority_verbose)){ std::string s = boost::algorithm::join(action, " "); @@ -342,7 +341,7 @@ void ScatterVArgParser::parse(simgrid::xbt::ReplayAction& action, std::string na void ReduceScatterArgParser::parse(simgrid::xbt::ReplayAction& action, std::string name) { /* The structure of the reducescatter action for the rank 0 (total 4 processes) is the following: - 0 reduceScatter 275427 275427 275427 204020 11346849 0 + 0 reducescatter 275427 275427 275427 204020 11346849 0 where: 1) The first four values after the name of the action declare the recvcounts array 2) The value 11346849 is the amount of instructions @@ -393,17 +392,6 @@ void AllToAllVArgParser::parse(simgrid::xbt::ReplayAction& action, std::string n recv_size_sum = std::accumulate(recvcounts->begin(), recvcounts->end(), 0); } -template -void ReplayAction::execute(simgrid::xbt::ReplayAction& action) -{ - // Needs to be re-initialized for every action, hence here - double start_time = smpi_process()->simulated_elapsed(); - args.parse(action, name); - kernel(action); - if (name != "Init") - log_timed_action(action, start_time); -} - void WaitAction::kernel(simgrid::xbt::ReplayAction& action) { std::string s = boost::algorithm::join(action, " "); @@ -534,7 +522,7 @@ void WaitAllAction::kernel(simgrid::xbt::ReplayAction& action) const unsigned int count_requests = req_storage.size(); if (count_requests > 0) { - TRACE_smpi_comm_in(my_proc_id, __func__, new simgrid::instr::Pt2PtTIData("waitAll", -1, count_requests, "")); + TRACE_smpi_comm_in(my_proc_id, __func__, new simgrid::instr::Pt2PtTIData("waitall", -1, count_requests, "")); std::vector> sender_receiver; std::vector reqs; req_storage.get_requests(reqs); @@ -588,7 +576,7 @@ void ReduceAction::kernel(simgrid::xbt::ReplayAction& action) void AllReduceAction::kernel(simgrid::xbt::ReplayAction& action) { - TRACE_smpi_comm_in(my_proc_id, "action_allReduce", new simgrid::instr::CollTIData("allReduce", -1, args.comp_size, args.comm_size, -1, + TRACE_smpi_comm_in(my_proc_id, "action_allreduce", new simgrid::instr::CollTIData("allreduce", -1, args.comp_size, args.comm_size, -1, Datatype::encode(args.datatype1), "")); Colls::allreduce(send_buffer(args.comm_size * args.datatype1->size()), @@ -682,7 +670,7 @@ void ScatterVAction::kernel(simgrid::xbt::ReplayAction& action) void ReduceScatterAction::kernel(simgrid::xbt::ReplayAction& action) { TRACE_smpi_comm_in(my_proc_id, "action_reducescatter", - new simgrid::instr::VarCollTIData("reduceScatter", -1, 0, nullptr, -1, args.recvcounts, + new simgrid::instr::VarCollTIData("reducescatter", -1, 0, nullptr, -1, args.recvcounts, std::to_string(args.comp_size), /* ugly hack to print comp_size */ Datatype::encode(args.datatype1))); @@ -735,20 +723,20 @@ void smpi_replay_init(int* argc, char*** argv) xbt_replay_action_register("Irecv", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::RecvAction("Irecv", storage[simgrid::s4u::this_actor::get_pid()-1]).execute(action); }); xbt_replay_action_register("test", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::TestAction(storage[simgrid::s4u::this_actor::get_pid()-1]).execute(action); }); xbt_replay_action_register("wait", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::WaitAction(storage[simgrid::s4u::this_actor::get_pid()-1]).execute(action); }); - xbt_replay_action_register("waitAll", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::WaitAllAction(storage[simgrid::s4u::this_actor::get_pid()-1]).execute(action); }); + xbt_replay_action_register("waitall", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::WaitAllAction(storage[simgrid::s4u::this_actor::get_pid()-1]).execute(action); }); xbt_replay_action_register("barrier", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::BarrierAction().execute(action); }); xbt_replay_action_register("bcast", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::BcastAction().execute(action); }); xbt_replay_action_register("reduce", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ReduceAction().execute(action); }); - xbt_replay_action_register("allReduce", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::AllReduceAction().execute(action); }); + xbt_replay_action_register("allreduce", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::AllReduceAction().execute(action); }); xbt_replay_action_register("allToAll", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::AllToAllAction().execute(action); }); xbt_replay_action_register("allToAllV", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::AllToAllVAction().execute(action); }); xbt_replay_action_register("gather", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::GatherAction("gather").execute(action); }); xbt_replay_action_register("scatter", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ScatterAction().execute(action); }); xbt_replay_action_register("gatherV", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::GatherVAction("gatherV").execute(action); }); - xbt_replay_action_register("scatterV", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ScatterVAction().execute(action); }); + xbt_replay_action_register("scatterv", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ScatterVAction().execute(action); }); xbt_replay_action_register("allGather", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::GatherAction("allGather").execute(action); }); - xbt_replay_action_register("allGatherV", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::GatherVAction("allGatherV").execute(action); }); - xbt_replay_action_register("reduceScatter", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ReduceScatterAction().execute(action); }); + xbt_replay_action_register("allgatherv", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::GatherVAction("allgatherv").execute(action); }); + xbt_replay_action_register("reducescatter", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ReduceScatterAction().execute(action); }); xbt_replay_action_register("compute", [](simgrid::xbt::ReplayAction& action) { simgrid::smpi::replay::ComputeAction().execute(action); }); //if we have a delayed start, sleep here.