X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/eb5b6b0c3c4d9a38bb205b2c8bc9aeeba8674a25..8734addee4efb8501991834fb99c2da15e9f8482:/src/surf/cpu_cas01.cpp diff --git a/src/surf/cpu_cas01.cpp b/src/surf/cpu_cas01.cpp index b58815c16a..d5fb35574b 100644 --- a/src/surf/cpu_cas01.cpp +++ b/src/surf/cpu_cas01.cpp @@ -6,7 +6,6 @@ #include "cpu_cas01.hpp" #include "cpu_ti.hpp" -#include "plugins/energy.hpp" #include "maxmin_private.hpp" #include "simgrid/sg_config.h" @@ -118,8 +117,8 @@ CpuPtr CpuCas01Model::createCpu(const char *name, xbt_dynar_t power_peak, "Host '%s' declared several times in the platform file", name); xbt_assert(xbt_dynar_getfirst_as(power_peak, double) > 0.0, - "Power has to be >0.0"); - xbt_assert(core > 0, "Invalid number of cores %d", core); + "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); xbt_lib_set(host_lib, name, SURF_CPU_LEVEL, cpu); @@ -231,11 +230,9 @@ void CpuCas01::updateState(tmgr_trace_event_t event_type, double value, double d lmm_update_constraint_bound(getModel()->getMaxminSystem(), getConstraint(), m_core * m_powerScale * m_powerPeak); -#ifdef HAVE_TRACING TRACE_surf_host_set_power(date, getName(), m_core * m_powerScale * m_powerPeak); -#endif while ((var = lmm_get_var_from_cnst (getModel()->getMaxminSystem(), getConstraint(), &elem))) { CpuCas01ActionPtr action = static_cast(lmm_variable_id(var)); @@ -344,14 +341,19 @@ int CpuCas01::getNbPstates() return xbt_dynar_length(p_powerPeakList); } -void CpuCas01::setPowerPeakAt(int pstate_index) +void CpuCas01::setPstate(int pstate_index) { xbt_dynar_t plist = p_powerPeakList; xbt_assert((pstate_index <= (int)xbt_dynar_length(plist)), "Invalid parameters (pstate index out of bounds)"); - double new_power_peak = xbt_dynar_get_as(plist, pstate_index, double); + double new_pstate = xbt_dynar_get_as(plist, pstate_index, double); m_pstate = pstate_index; - m_powerPeak = new_power_peak; + m_powerPeak = new_pstate; +} + +int CpuCas01::getPstate() +{ + return m_pstate; } /**********