sg_host_t*host_list = xbt_new0(sg_host_t, 2);
double *flops_amount = xbt_new0(double, 2);
double *bytes_amount = xbt_new0(double, 4);
- Action *res = NULL;
host_list[0] = sg_host_by_name(src->name());
host_list[1] = sg_host_by_name(dst->name());
bytes_amount[1] = size;
- res = p_hostModel->executeParallelTask(2, host_list, flops_amount, bytes_amount, rate);
-
- return res;
+ return p_hostModel->executeParallelTask(2, host_list, flops_amount, bytes_amount, rate);
}
-Cpu *CpuL07Model::createCpu(simgrid::s4u::Host *host, xbt_dynar_t powerPeakList,
- tmgr_trace_t power_trace, int core, tmgr_trace_t state_trace)
+Cpu *CpuL07Model::createCpu(simgrid::s4u::Host *host, xbt_dynar_t speedsList, int core)
{
- CpuL07 *cpu = new CpuL07(this, host, powerPeakList, power_trace, core, state_trace);
- return cpu;
+ return new CpuL07(this, host, speedsList, 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);
+ 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);
* Resource *
************/
-CpuL07::CpuL07(CpuL07Model *model, simgrid::s4u::Host *host,
- xbt_dynar_t speedPeakList,
- tmgr_trace_t speedTrace,
- int core, tmgr_trace_t state_trace)
- : Cpu(model, host, speedPeakList, core, xbt_dynar_get_as(speedPeakList,0,double))
+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))
{
- p_constraint = lmm_constraint_new(model->getMaxminSystem(), this, xbt_dynar_get_as(speedPeakList,0,double));
-
- if (speedTrace)
- p_speed.event = future_evt_set->add_trace(speedTrace, 0.0, this);
-
- if (state_trace)
- p_stateEvent = future_evt_set->add_trace(state_trace, 0.0, this);
+ p_constraint = lmm_constraint_new(model->getMaxminSystem(), this, xbt_dynar_get_as(speedList,0,double));
}
CpuL07::~CpuL07()
lmm_variable_t var = NULL;
lmm_element_t elem = NULL;
- lmm_update_constraint_bound(getModel()->getMaxminSystem(), getConstraint(), p_speed.peak * p_speed.scale);
+ lmm_update_constraint_bound(getModel()->getMaxminSystem(), getConstraint(), speed_.peak * speed_.scale);
while ((var = lmm_get_var_from_cnst
(getModel()->getMaxminSystem(), getConstraint(), &elem))) {
Action *action = static_cast<Action*>(lmm_variable_id(var));
lmm_update_variable_bound(getModel()->getMaxminSystem(),
action->getVariable(),
- p_speed.scale * p_speed.peak);
+ speed_.scale * speed_.peak);
}
Cpu::onSpeedChange();
void CpuL07::apply_event(tmgr_trace_iterator_t triggered, double value){
XBT_DEBUG("Updating cpu %s (%p) with value %g", getName(), this, value);
- if (triggered == p_speed.event) {
- p_speed.scale = value;
+ if (triggered == speed_.event) {
+ speed_.scale = value;
onSpeedChange();
- tmgr_trace_event_unref(&p_speed.event);
+ tmgr_trace_event_unref(&speed_.event);
- } else if (triggered == p_stateEvent) {
+ } else if (triggered == stateEvent_) {
if (value > 0)
turnOn();
else
turnOff();
- tmgr_trace_event_unref(&p_stateEvent);
+ tmgr_trace_event_unref(&stateEvent_);
} else {
xbt_die("Unknown event!\n");