Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[trace] tracing no longer needs src and dst for every network surf action
[simgrid.git] / src / surf / network.c
index 493623e..d325f8a 100644 (file)
@@ -344,11 +344,6 @@ static int net_action_unref(surf_action_t action)
       heap_remove((surf_action_network_CM02_t) action);
       xbt_swag_remove(action, net_modified_set);
     }
-#ifdef HAVE_TRACING
-    xbt_free(((surf_action_network_CM02_t) action)->src_name);
-    xbt_free(((surf_action_network_CM02_t) action)->dst_name);
-    xbt_free(action->category);
-#endif
     surf_action_free(&action);
     return 1;
   }
@@ -557,18 +552,18 @@ static void net_update_actions_state_full(double now, double delta)
     }
 #ifdef HAVE_TRACING
     if (TRACE_is_enabled()) {
-      xbt_dynar_t route = NULL;
-      routing_get_route_and_latency(action->src_name, action->dst_name,
-                                    &route, NULL);
-      link_CM02_t link;
+      int n = lmm_get_number_of_cnst_from_var(network_maxmin_system, GENERIC_LMM_ACTION(action).variable);
       unsigned int i;
-      xbt_dynar_foreach(route, i, link) {
-        TRACE_surf_link_set_utilization(link->lmm_resource.
-            generic_resource.name,
-            GENERIC_ACTION(action).data,
-            (surf_action_t) action,
-            lmm_variable_getvalue(GENERIC_LMM_ACTION(action).variable),
-            now - delta, delta);
+      for (i = 0; i < n; i++){
+        lmm_constraint_t constraint = lmm_get_cnst_from_var(network_maxmin_system,
+                                                            GENERIC_LMM_ACTION(action).variable,
+                                                            i);
+        link_CM02_t link = lmm_constraint_id(constraint);
+        TRACE_surf_link_set_utilization(link->lmm_resource.generic_resource.name,
+                                        ((surf_action_t)action)->category,
+                                        lmm_variable_getvalue(GENERIC_LMM_ACTION(action).variable),
+                                        now - delta,
+                                        delta);
       }
     }
 #endif
@@ -886,14 +881,6 @@ static surf_action_t net_communicate(const char *src_name,
                  GENERIC_LMM_ACTION(action).variable, .05);
     }
   }
-#ifdef HAVE_TRACING
-  if (TRACE_is_enabled()) {
-    action->src_name = xbt_strdup(src_name);
-    action->dst_name = xbt_strdup(dst_name);
-  } else {
-    action->src_name = action->dst_name = NULL;
-  }
-#endif
 
   xbt_dynar_free(&route);
   XBT_OUT();