Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
unify the naming of that property
[simgrid.git] / src / surf / cpu_interface.cpp
index d9f658b..428f1a9 100644 (file)
@@ -20,24 +20,16 @@ simgrid::surf::CpuModel *surf_cpu_model_vm;
 namespace simgrid {
 namespace surf {
 
-/*************
- * Callbacks *
- *************/
-
-simgrid::xbt::signal<void(CpuAction*, Action::State, Action::State)> cpuActionStateChangedCallbacks;
-
 /*********
  * Model *
  *********/
 
-CpuModel::~CpuModel() {}
-
 void CpuModel::updateActionsStateLazy(double now, double /*delta*/)
 {
-  CpuAction *action;
   while ((xbt_heap_size(getActionHeap()) > 0)
          && (double_equals(xbt_heap_maxkey(getActionHeap()), now, sg_surf_precision))) {
-    action = static_cast<CpuAction*>(xbt_heap_pop(getActionHeap()));
+
+    CpuAction *action = static_cast<CpuAction*>(xbt_heap_pop(getActionHeap()));
     XBT_CDEBUG(surf_kernel, "Something happened to action %p", action);
     if (TRACE_is_enabled()) {
       Cpu *cpu = static_cast<Cpu*>(lmm_constraint_id(lmm_get_cnst_from_var(getMaxminSystem(), action->getVariable(), 0)));
@@ -53,7 +45,6 @@ void CpuModel::updateActionsStateLazy(double now, double /*delta*/)
     /* set the remains to 0 due to precision problems when updating the remaining amount */
     action->setRemains(0);
     action->setState(Action::State::done);
-    action->heapRemove(getActionHeap()); //FIXME: strange call since action was already popped
   }
   if (TRACE_is_enabled()) {
     //defining the last timestamp that we can safely dump to trace file
@@ -62,7 +53,7 @@ void CpuModel::updateActionsStateLazy(double now, double /*delta*/)
     ActionList *actionSet = getRunningActionSet();
     for(ActionList::iterator it(actionSet->begin()), itend(actionSet->end())
        ; it != itend ; ++it) {
-      action = static_cast<CpuAction*>(&*it);
+      CpuAction *action = static_cast<CpuAction*>(&*it);
         if (smaller < 0) {
           smaller = action->getLastUpdate();
           continue;
@@ -75,7 +66,6 @@ void CpuModel::updateActionsStateLazy(double now, double /*delta*/)
       TRACE_last_timestamp_to_dump = smaller;
     }
   }
-  return;
 }
 
 void CpuModel::updateActionsStateFull(double now, double delta)
@@ -117,11 +107,6 @@ void CpuModel::updateActionsStateFull(double now, double delta)
   }
 }
 
-bool CpuModel::next_occuring_event_isIdempotent()
-{
-  return true;
-}
-
 /************
  * Resource *
  ************/
@@ -144,20 +129,14 @@ Cpu::Cpu(Model *model, simgrid::s4u::Host *host, lmm_constraint_t constraint,
   xbt_assert(speed_.scale > 0, "Speed of host %s must be >0", host->name().c_str());
 
   // Copy the power peak array:
-  speedPerPstate_ = new std::vector<double>();
-  unsigned long n = speedPerPstate->size();
-  for (unsigned long i = 0; i != n; ++i) {
-    double value = speedPerPstate->at(i);
-    speedPerPstate_->push_back(value);
+  for (double value : *speedPerPstate) {
+    speedPerPstate_.push_back(value);
   }
 
   xbt_assert(model == surf_cpu_model_pm || core==1, "Currently, VM cannot be multicore");
 }
 
-Cpu::~Cpu()
-{
-  delete speedPerPstate_;
-}
+Cpu::~Cpu() = default;
 
 double Cpu::getPstateSpeedCurrent()
 {
@@ -166,17 +145,16 @@ double Cpu::getPstateSpeedCurrent()
 
 int Cpu::getNbPStates()
 {
-  return speedPerPstate_->size();
+  return speedPerPstate_.size();
 }
 
 void Cpu::setPState(int pstate_index)
 {
-  std::vector<double> *plist = speedPerPstate_;
-  xbt_assert(pstate_index <= static_cast<int>(plist->size()),
+  xbt_assert(pstate_index <= static_cast<int>(speedPerPstate_.size()),
       "Invalid parameters for CPU %s (pstate %d > length of pstates %d)", getName(), pstate_index,
-      static_cast<int>(plist->size()));
+      static_cast<int>(speedPerPstate_.size()));
 
-  double new_peak_speed = plist->at(pstate_index);
+  double new_peak_speed = speedPerPstate_[pstate_index];
   pstate_ = pstate_index;
   speed_.peak = new_peak_speed;
 
@@ -190,10 +168,9 @@ int Cpu::getPState()
 
 double Cpu::getPstateSpeed(int pstate_index)
 {
-  std::vector<double> *plist = speedPerPstate_;
-  xbt_assert((pstate_index <= static_cast<int>(plist->size())), "Invalid parameters (pstate index out of bounds)");
+  xbt_assert((pstate_index <= static_cast<int>(speedPerPstate_.size())), "Invalid parameters (pstate index out of bounds)");
 
-  return plist->at(pstate_index);
+  return speedPerPstate_[pstate_index];
 }
 
 double Cpu::getSpeed(double load)
@@ -211,8 +188,7 @@ void Cpu::onSpeedChange() {
   TRACE_surf_host_set_speed(surf_get_clock(), getName(), coresAmount_ * speed_.scale * speed_.peak);
 }
 
-
-int Cpu::getCore()
+int Cpu::coreCount()
 {
   return coresAmount_;
 }