- Cpu *cpu = NULL;
- sg_host_t host = sg_host_by_name(name);
- xbt_assert(xbt_dynar_getfirst_as(power_peak, double) > 0.0,
- "Power has to be >0.0. Did you forget to specify the mandatory power attribute?");
- xbt_assert(core > 0, "Invalid number of cores %d. Must be larger than 0", core);
-
- cpu = new CpuCas01(this, name, power_peak, pstate, power_scale, power_trace, core, state_initial, state_trace, cpu_properties);
- sg_host_surfcpu_register(host, cpu);
- return cpu;
-}
-
-double CpuCas01Model::shareResourcesFull(double /*now*/)
-{
- return Model::shareResourcesMaxMin(getRunningActionSet(),
- p_maxminSystem, lmm_solve);
-}
-
-void CpuCas01Model::addTraces()
-{
- xbt_dict_cursor_t cursor = NULL;
- char *trace_name, *elm;
- static int called = 0;
- if (called)
- return;
- called = 1;
-
- /* connect all traces relative to hosts */
- xbt_dict_foreach(trace_connect_list_host_avail, cursor, trace_name, elm) {
- tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
- CpuCas01 *host = static_cast<CpuCas01*>(sg_host_surfcpu(sg_host_by_name(elm)));
-
- xbt_assert(host, "Host %s undefined", elm);
- xbt_assert(trace, "Trace %s undefined", trace_name);
-
- host->setStateEvent(tmgr_history_add_trace(history, trace, 0.0, 0, host));
- }
-
- xbt_dict_foreach(trace_connect_list_power, cursor, trace_name, elm) {
- tmgr_trace_t trace = (tmgr_trace_t) xbt_dict_get_or_null(traces_set_list, trace_name);
- CpuCas01 *host = static_cast<CpuCas01*>(sg_host_surfcpu(sg_host_by_name(elm)));
-
- xbt_assert(host, "Host %s undefined", elm);
- xbt_assert(trace, "Trace %s undefined", trace_name);
-
- host->setPowerEvent(tmgr_history_add_trace(history, trace, 0.0, 0, host));
- }