#include "mc/mc.h"
#include "smx_private.hpp"
+#include "src/kernel/activity/CommImpl.hpp"
+#include "src/kernel/activity/ExecImpl.hpp"
#include "src/mc/mc_replay.hpp"
#include "src/plugins/vm/VirtualMachineImpl.hpp"
#include "src/simix/smx_host_private.hpp"
-#include "src/surf/surf_interface.hpp"
#include "xbt/ex.hpp"
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_host, simix, "SIMIX hosts");
}
/**
- * \brief Add a process to the list of the processes that the host will restart when it comes back
+ * @brief Add a process to the list of the processes that the host will restart when it comes back
* This function add a process to the list of the processes that will be restarted when the host comes
* back. It is expected that this function is called when the host is down.
* The processes will only be restarted once, meaning that you will have to register the process
XBT_DEBUG("Push host %s to watched_hosts because state == SURF_RESOURCE_OFF", host->get_cname());
}
XBT_DEBUG("Adding Process %s to the auto-restart list of Host %s", arg->name.c_str(), arg->host->get_cname());
- host->pimpl_->auto_restart_processes.push_back(arg);
+ host->pimpl_->auto_restart_processes_.push_back(arg);
}
/** @brief Restart the list of processes that have been registered to the host */
void SIMIX_host_autorestart(sg_host_t host)
{
- std::vector<simgrid::kernel::actor::ProcessArg*> process_list = host->pimpl_->auto_restart_processes;
+ std::vector<simgrid::kernel::actor::ProcessArg*> process_list = host->pimpl_->auto_restart_processes_;
for (auto const& arg : process_list) {
XBT_DEBUG("Restarting Process %s@%s right now", arg->name.c_str(), arg->host->get_cname());
process_list.clear();
}
-boost::intrusive_ptr<simgrid::kernel::activity::ExecImpl>
-SIMIX_execution_start(const char* name, double flops_amount, double priority, double bound, sg_host_t host)
+boost::intrusive_ptr<simgrid::kernel::activity::ExecImpl> 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;
simgrid::kernel::activity::ExecImplPtr exec = simgrid::kernel::activity::ExecImplPtr(
new simgrid::kernel::activity::ExecImpl(name, surf_action, /*timeout_detector*/ nullptr, host));
+ exec->set_category(name);
XBT_DEBUG("Create execute synchro %p: %s", exec.get(), exec->name_.c_str());
- simgrid::kernel::activity::ExecImpl::onCreation(exec);
+ simgrid::kernel::activity::ExecImpl::on_creation(exec);
return exec;
}
boost::intrusive_ptr<simgrid::kernel::activity::ExecImpl>
-SIMIX_execution_parallel_start(const char* name, int host_nb, sg_host_t* host_list, double* flops_amount,
+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)
{
}
}
-void SIMIX_set_category(smx_activity_t synchro, const char *category)
+void SIMIX_set_category(smx_activity_t synchro, std::string category)
{
if (synchro->state_ != SIMIX_RUNNING)
return;