From f4d38cfaf4833e416c72a7ca427dd5cd6a0af2e2 Mon Sep 17 00:00:00 2001 From: Frederic Suter Date: Fri, 8 Feb 2019 12:01:01 +0100 Subject: [PATCH] replace SIMIX_execution_start by modern simcall --- src/simix/ActorImpl.cpp | 6 +++++- src/simix/libsmx.cpp | 5 ++++- src/simix/smx_host.cpp | 25 ------------------------- src/simix/smx_host_private.hpp | 3 --- 4 files changed, 9 insertions(+), 30 deletions(-) diff --git a/src/simix/ActorImpl.cpp b/src/simix/ActorImpl.cpp index 95beeba9d7..fe1c95647b 100644 --- a/src/simix/ActorImpl.cpp +++ b/src/simix/ActorImpl.cpp @@ -5,6 +5,8 @@ #include "mc/mc.h" #include "simgrid/Exception.hpp" +#include "simgrid/s4u/Actor.hpp" +#include "simgrid/s4u/Exec.hpp" #include "smx_private.hpp" #include "src/kernel/activity/CommImpl.hpp" #include "src/kernel/activity/ExecImpl.hpp" @@ -174,7 +176,9 @@ smx_activity_t ActorImpl::suspend(ActorImpl* issuer) return nullptr; } else { - return SIMIX_execution_start("suspend", "", 0.0, 1.0, 0.0, this->host_); + activity::ExecImplPtr exec = activity::ExecImplPtr(new activity::ExecImpl("suspend", "", nullptr, this->host_)); + exec->start(0.0, 1.0, 0.0); + return exec; } } diff --git a/src/simix/libsmx.cpp b/src/simix/libsmx.cpp index 50962e328e..fadbc6425a 100644 --- a/src/simix/libsmx.cpp +++ b/src/simix/libsmx.cpp @@ -397,6 +397,9 @@ smx_activity_t simcall_execution_start(std::string name, std::string category, d double bound, sg_host_t host) { return simgrid::simix::simcall([name, category, flops_amount, priority, bound, host] { - return SIMIX_execution_start(name, category, flops_amount, priority, bound, host); + simgrid::kernel::activity::ExecImplPtr exec = + simgrid::kernel::activity::ExecImplPtr(new simgrid::kernel::activity::ExecImpl(name, category, nullptr, host)); + exec->start(flops_amount, priority, bound); + return exec; }); } diff --git a/src/simix/smx_host.cpp b/src/simix/smx_host.cpp index 8de7c6aefa..53fd30cd5d 100644 --- a/src/simix/smx_host.cpp +++ b/src/simix/smx_host.cpp @@ -24,31 +24,6 @@ const char* sg_host_self_get_name() return host->get_cname(); } -simgrid::kernel::activity::ExecImplPtr SIMIX_execution_start(std::string name, std::string category, - double flops_amount, double priority, double bound, - sg_host_t host) -{ - /* set surf's action */ - simgrid::kernel::resource::Action* surf_action = nullptr; - if (not MC_is_active() && not MC_record_replay_is_active()) { - surf_action = host->pimpl_cpu->execution_start(flops_amount); - surf_action->set_priority(priority); - if (bound > 0) - surf_action->set_bound(bound); - } - - simgrid::kernel::activity::ExecImplPtr exec = simgrid::kernel::activity::ExecImplPtr( - new simgrid::kernel::activity::ExecImpl(name, category, /*timeout_detector*/ nullptr, host)); - if (surf_action != nullptr) { - exec->surf_action_ = surf_action; - exec->surf_action_->set_data(exec.get()); - } - XBT_DEBUG("Create execute synchro %p: %s", exec.get(), exec->name_.c_str()); - simgrid::kernel::activity::ExecImpl::on_creation(exec); - - return exec; -} - simgrid::kernel::activity::ExecImplPtr SIMIX_execution_parallel_start(std::string name, int host_nb, sg_host_t* host_list, double* flops_amount, double* bytes_amount, double rate, double timeout) diff --git a/src/simix/smx_host_private.hpp b/src/simix/smx_host_private.hpp index 120047923e..094b3117f3 100644 --- a/src/simix/smx_host_private.hpp +++ b/src/simix/smx_host_private.hpp @@ -12,9 +12,6 @@ XBT_PRIVATE void SIMIX_execution_finish(smx_activity_t synchro); -XBT_PRIVATE simgrid::kernel::activity::ExecImplPtr SIMIX_execution_start(std::string name, std::string category, - double flops_amount, double priority, - double bound, sg_host_t host); XBT_PRIVATE simgrid::kernel::activity::ExecImplPtr SIMIX_execution_parallel_start(std::string name, int host_nb, sg_host_t* host_list, double* flops_amount, double* bytes_amount, double rate, double timeout); -- 2.20.1