Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
New: MSG_host_get_pstate() and smpi_get_host_pstate()
[simgrid.git] / src / surf / surf_c_bindings.cpp
index de2e071..2d7b613 100644 (file)
@@ -74,6 +74,18 @@ void surf_presolve(void)
       model->updateActionsState(NOW, 0.0);
 }
 
+/**
+ * Computes when the next action executed in a
+ * specific model terminates; this is important,
+ * because we can safely skip the amount of time
+ * in which no model (read: not even a single one)
+ * changes its state; so, if for instance network,
+ * cpu, storage don't change (and if we assume they're
+ * the only models we use... simple example here :) )
+ * for 2s, 1s, 3s then we can skip 1s as after this
+ * amount of time the new state needs to be considered.
+ *
+ */
 static void surf_share_resources(surf_model_t model)
 {
   double next_action_end = -1.0;
@@ -198,9 +210,7 @@ double surf_solve(double max_date)
     surf_update_actions_state(model);
   }
 
-#ifdef HAVE_TRACING
   TRACE_paje_dump_buffer (0);
-#endif
 
   return surf_min;
 }
@@ -346,8 +356,11 @@ int surf_workstation_get_nb_pstates(surf_resource_t resource){
   return get_casted_workstation(resource)->getNbPstates();
 }
 
-void surf_workstation_set_power_peak_at(surf_resource_t resource, int pstate_index){
-  return get_casted_workstation(resource)->setPowerPeakAt(pstate_index);
+void surf_workstation_set_pstate(surf_resource_t resource, int pstate_index){
+  get_casted_workstation(resource)->setPstate(pstate_index);
+}
+int surf_workstation_get_pstate(surf_resource_t resource){
+  return get_casted_workstation(resource)->getPstate();
 }
 
 double surf_workstation_get_consumed_energy(surf_resource_t resource){
@@ -557,11 +570,9 @@ void surf_action_set_priority(surf_action_t action, double priority){
   action->setPriority(priority);
 }
 
-#ifdef HAVE_TRACING
 void surf_action_set_category(surf_action_t action, const char *category){
   action->setCategory(category);
 }
-#endif
 
 void *surf_action_get_data(surf_action_t action){
   return action->getData();