Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[ENERGY] Use a local variable instead of making the same call twice
authorChristian Heinrich <franz-christian.heinrich@inria.fr>
Fri, 10 Mar 2017 10:36:25 +0000 (11:36 +0100)
committerChristian Heinrich <franz-christian.heinrich@inria.fr>
Fri, 10 Mar 2017 10:36:45 +0000 (11:36 +0100)
src/surf/plugins/host_energy.cpp

index a84acc7..47b3f50 100644 (file)
@@ -104,12 +104,13 @@ void HostEnergy::update()
   double start_time  = this->last_updated;
   double finish_time = surf_get_clock();
   double cpu_load;
-  if (host->pimpl_cpu->getPstateSpeedCurrent() <= 0)
+  double current_speed = host->pimpl_cpu->getPstateSpeedCurrent();
+  if (current_speed <= 0)
     // Some users declare a pstate of speed 0 flops (e.g., to model boot time).
     // We consider that the machine is then fully loaded. That's arbitrary but it avoids a NaN
     cpu_load = 1;
   else
-    cpu_load = lmm_constraint_get_usage(host->pimpl_cpu->constraint()) / host->pimpl_cpu->getPstateSpeedCurrent();
+    cpu_load = lmm_constraint_get_usage(host->pimpl_cpu->constraint()) / current_speed;
 
   /** Divide by the number of cores here **/
   cpu_load /= host->pimpl_cpu->coreCount();