X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bab5efc96624e2d815745cd0c9c0b29118d88f39..3082f058f27fdbc39b5daebf6a720ab2272d6585:/src/surf/ptask_L07.cpp?ds=sidebyside diff --git a/src/surf/ptask_L07.cpp b/src/surf/ptask_L07.cpp index 9c70b312e4..9a7179fee8 100644 --- a/src/surf/ptask_L07.cpp +++ b/src/surf/ptask_L07.cpp @@ -26,9 +26,6 @@ void surf_host_model_init_ptask_L07(void) xbt_assert(!surf_cpu_model_pm, "CPU model type already defined"); xbt_assert(!surf_network_model, "network model type already defined"); - // Define the callbacks to parse the XML - simgrid::surf::on_link.connect(netlink_parse_init); - surf_host_model = new simgrid::surf::HostL07Model(); xbt_dynar_push(all_existing_models, &surf_host_model); } @@ -143,11 +140,11 @@ void HostL07Model::updateActionsState(double /*now*/, double delta) { if ((action->getRemains() <= 0) && (lmm_get_variable_weight(action->getVariable()) > 0)) { action->finish(); - action->setState(SURF_ACTION_DONE); + action->setState(Action::State::done); } else if ((action->getMaxDuration() != NO_MAX_DURATION) && (action->getMaxDuration() <= 0)) { action->finish(); - action->setState(SURF_ACTION_DONE); + action->setState(Action::State::done); } else { /* Need to check that none of the model has failed */ lmm_constraint_t cnst = NULL; @@ -155,11 +152,10 @@ void HostL07Model::updateActionsState(double /*now*/, double delta) { while ((cnst = lmm_get_cnst_from_var(maxminSystem_, action->getVariable(), i++))) { void *constraint_id = lmm_constraint_id(cnst); - - if (static_cast(constraint_id)->isOff()) { + if (static_cast(constraint_id)->isOff()) { XBT_DEBUG("Action (%p) Failed!!", action); action->finish(); - action->setState(SURF_ACTION_FAILED); + action->setState(Action::State::failed); break; } } @@ -222,7 +218,7 @@ L07Action::L07Action(Model *model, int host_nb, sg_host_t*host_list, this->m_latency = latency; this->m_rate = rate; - this->p_variable = lmm_variable_new(model->getMaxminSystem(), this, 1.0, + this->variable_ = lmm_variable_new(model->getMaxminSystem(), this, 1.0, (rate > 0 ? rate : -1.0), host_nb + nb_link); @@ -258,8 +254,7 @@ L07Action::L07Action(Model *model, int host_nb, sg_host_t*host_list, xbt_free(host_list); } -Action *NetworkL07Model::communicate(NetCard *src, NetCard *dst, - double size, double rate) +Action *NetworkL07Model::communicate(NetCard *src, NetCard *dst, double size, double rate) { sg_host_t*host_list = xbt_new0(sg_host_t, 2); double *flops_amount = xbt_new0(double, 2); @@ -272,29 +267,25 @@ Action *NetworkL07Model::communicate(NetCard *src, NetCard *dst, return p_hostModel->executeParallelTask(2, host_list, flops_amount, bytes_amount, rate); } -Cpu *CpuL07Model::createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedsList, int core) +Cpu *CpuL07Model::createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core) { - return new CpuL07(this, host, speedsList, core); + return new CpuL07(this, host, speedPerPstate, core); } Link* NetworkL07Model::createLink(const char *name, double bandwidth, double latency, e_surf_link_sharing_policy_t policy, xbt_dict_t properties) { - xbt_assert(!Link::byName(name), "Link '%s' declared several times in the platform.", name); - - Link* link = new LinkL07(this, name, properties, bandwidth, latency, policy); - Link::onCreation(link); - return link; + return new LinkL07(this, name, properties, bandwidth, latency, policy); } /************ * Resource * ************/ -CpuL07::CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, xbt_dynar_t speedList, int core) - : Cpu(model, host, speedList, core, xbt_dynar_get_as(speedList,0,double)) +CpuL07::CpuL07(CpuL07Model *model, simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core) + : Cpu(model, host, speedPerPstate, core) { - p_constraint = lmm_constraint_new(model->getMaxminSystem(), this, xbt_dynar_get_as(speedList,0,double)); + constraint_ = lmm_constraint_new(model->getMaxminSystem(), this, xbt_dynar_get_as(speedPerPstate,0,double)); } CpuL07::~CpuL07() @@ -310,6 +301,8 @@ LinkL07::LinkL07(NetworkL07Model *model, const char* name, xbt_dict_t props, dou if (policy == SURF_LINK_FATPIPE) lmm_constraint_shared(getConstraint()); + + Link::onCreation(this); } Action *CpuL07::execution_start(double size) @@ -327,8 +320,8 @@ Action *CpuL07::execution_start(double size) Action *CpuL07::sleep(double duration) { L07Action *action = static_cast(execution_start(1.0)); - action->m_maxDuration = duration; - action->m_suspended = 2; + action->maxDuration_ = duration; + action->suspended_ = 2; lmm_update_variable_weight(getModel()->getMaxminSystem(), action->getVariable(), 0.0); return action; @@ -456,7 +449,7 @@ void L07Action::updateBound() } lat_bound = sg_tcp_gamma / (2.0 * lat_current); XBT_DEBUG("action (%p) : lat_bound = %g", this, lat_bound); - if ((m_latency == 0.0) && (m_suspended == 0)) { + if ((m_latency == 0.0) && (suspended_ == 0)) { if (m_rate < 0) lmm_update_variable_bound(getModel()->getMaxminSystem(), getVariable(), lat_bound); else @@ -467,10 +460,10 @@ void L07Action::updateBound() int L07Action::unref() { - m_refcount--; - if (!m_refcount) { + refcount_--; + if (!refcount_) { if (action_hook.is_linked()) - p_stateSet->erase(p_stateSet->iterator_to(*this)); + stateSet_->erase(stateSet_->iterator_to(*this)); if (getVariable()) lmm_variable_free(getModel()->getMaxminSystem(), getVariable()); delete this;