X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/23f4a1521c0658ea2450c97e70616b6d04de97d7..90d012e147a92dd7c78f0d0e8d1614b6559eb450:/src/simix/ActorImpl.cpp?ds=sidebyside diff --git a/src/simix/ActorImpl.cpp b/src/simix/ActorImpl.cpp index 2329d65388..be85cd753c 100644 --- a/src/simix/ActorImpl.cpp +++ b/src/simix/ActorImpl.cpp @@ -21,14 +21,15 @@ #include -#include "src/surf/surf_interface.hpp" #include "smx_private.h" -#include "src/mc/mc_replay.h" +#include "src/kernel/activity/SynchroIo.hpp" +#include "src/kernel/activity/SynchroRaw.hpp" +#include "src/kernel/activity/SynchroSleep.hpp" #include "src/mc/Client.hpp" +#include "src/mc/mc_replay.h" #include "src/msg/msg_private.h" -#include "src/kernel/activity/SynchroSleep.hpp" -#include "src/kernel/activity/SynchroRaw.hpp" -#include "src/kernel/activity/SynchroIo.hpp" +#include "src/surf/cpu_interface.hpp" +#include "src/surf/surf_interface.hpp" #ifdef HAVE_SMPI #include "src/smpi/private.h" @@ -222,8 +223,7 @@ void SIMIX_process_stop(smx_actor_t arg) { arg->properties, arg->auto_restart); } - XBT_DEBUG("Process %s (%s) is dead", - arg->name.c_str(), sg_host_get_name(arg->host)); + XBT_DEBUG("Process %s@%s is dead", arg->cname(), arg->host->cname()); arg->context->stop(); } @@ -248,10 +248,10 @@ smx_actor_t SIMIX_process_create( { smx_actor_t process = nullptr; - XBT_DEBUG("Start process %s on host '%s'", name, host->name().c_str()); + XBT_DEBUG("Start process %s on host '%s'", name, host->cname()); if (host->isOff()) { - XBT_WARN("Cannot launch process '%s' on failed host '%s'", name, host->name().c_str()); + XBT_WARN("Cannot launch process '%s' on failed host '%s'", name, host->cname()); return nullptr; } else { @@ -303,20 +303,18 @@ smx_actor_t SIMIX_process_create( /* Now insert it in the global process list and in the process to run list */ xbt_swag_insert(process, simix_global->process_list); - XBT_DEBUG("Inserting %s(%s) in the to_run list", - process->name.c_str(), sg_host_get_name(host)); + XBT_DEBUG("Inserting %s(%s) in the to_run list", process->cname(), host->cname()); xbt_dynar_push_as(simix_global->process_to_run, smx_actor_t, process); if (kill_time > SIMIX_get_clock() && simix_global->kill_process_function) { - XBT_DEBUG("Process %s(%s) will be kill at time %f", - process->name.c_str(), sg_host_get_name(process->host), kill_time); + XBT_DEBUG("Process %s(%s) will be kill at time %f", process->cname(), process->host->cname(), kill_time); process->kill_timer = SIMIX_timer_set(kill_time, [=]() { simix_global->kill_process_function(process); }); } /* Tracing the process creation */ - TRACE_msg_process_create(process->name.c_str(), process->pid, process->host); + TRACE_msg_process_create(process->cname(), process->pid, process->host); } return process; } @@ -383,12 +381,11 @@ smx_actor_t SIMIX_process_attach( /* Now insert it in the global process list and in the process to run list */ xbt_swag_insert(process, simix_global->process_list); - XBT_DEBUG("Inserting %s(%s) in the to_run list", - process->name.c_str(), sg_host_get_name(host)); + XBT_DEBUG("Inserting %s(%s) in the to_run list", process->cname(), host->cname()); xbt_dynar_push_as(simix_global->process_to_run, smx_actor_t, process); /* Tracing the process creation */ - TRACE_msg_process_create(process->name.c_str(), process->pid, process->host); + TRACE_msg_process_create(process->cname(), process->pid, process->host); auto context = dynamic_cast(process->context); if (!context) @@ -449,8 +446,7 @@ void simcall_HANDLER_process_kill(smx_simcall_t simcall, smx_actor_t process) { */ void SIMIX_process_kill(smx_actor_t process, smx_actor_t issuer) { - XBT_DEBUG("Killing process %s on %s", - process->name.c_str(), sg_host_get_name(process->host)); + XBT_DEBUG("Killing process %s@%s", process->cname(), process->host->cname()); process->context->iwannadie = 1; process->blocked = 0; @@ -789,13 +785,12 @@ smx_activity_t SIMIX_process_sleep(smx_actor_t process, double duration) { sg_host_t host = process->host; - /* check if the host is active */ if (host->isOff()) - THROWF(host_error, 0, "Host %s failed, you cannot call this function", sg_host_get_name(host)); + THROWF(host_error, 0, "Host %s failed, you cannot sleep there.", host->cname()); simgrid::kernel::activity::Sleep *synchro = new simgrid::kernel::activity::Sleep(); synchro->host = host; - synchro->surf_sleep = surf_host_sleep(host, duration); + synchro->surf_sleep = host->pimpl_cpu->sleep(duration); synchro->surf_sleep->setData(synchro); XBT_DEBUG("Create sleep synchronization %p", synchro); @@ -942,7 +937,7 @@ smx_actor_t simcall_HANDLER_process_restart(smx_simcall_t simcall, smx_actor_t p } /** @brief Restart a process, starting it again from the beginning. */ smx_actor_t SIMIX_process_restart(smx_actor_t process, smx_actor_t issuer) { - XBT_DEBUG("Restarting process %s on %s", process->name.c_str(), sg_host_get_name(process->host)); + XBT_DEBUG("Restarting process %s on %s", process->cname(), process->host->cname()); //retrieve the arguments of the old process //FIXME: Factorize this with SIMIX_host_add_auto_restart_process ?