Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
model-checker : snapshot comparison with the types of variables and cleanup
[simgrid.git] / src / surf / instr_routing.c
index e4be277..63b2100 100644 (file)
@@ -5,7 +5,6 @@
   * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include "instr/instr_private.h"
-#include "mc/mc.h"
 
 #ifdef HAVE_TRACING
 #include "surf/surf_private.h"
@@ -117,9 +116,6 @@ static void linkContainers (container_t src, container_t dst, xbt_dict_t filter)
   //create the link
   static long long counter = 0;
 
-  if(MC_is_active())
-    MC_ignore_data_bss(&counter, sizeof(counter));
-
   char key[INSTR_DEFAULT_STR_SIZE];
   snprintf (key, INSTR_DEFAULT_STR_SIZE, "%lld", counter++);
   new_pajeStartLink(SIMIX_get_clock(), father, link_type, src, "topology", key);
@@ -128,18 +124,6 @@ static void linkContainers (container_t src, container_t dst, xbt_dict_t filter)
   XBT_DEBUG ("  linkContainers %s <-> %s", src->name, dst->name);
 }
 
-static int graph_extraction_filter_out (container_t c1, container_t c2)
-{
-  if (c1->kind == INSTR_LINK ||
-      c1->kind == INSTR_SMPI ||
-      c1->kind == INSTR_MSG_PROCESS ||
-      c1->kind == INSTR_MSG_TASK ||
-      (c2 && strcmp (c1->name, c2->name) == 0))
-    return 1;
-  else
-    return 0;
-}
-
 static void recursiveGraphExtraction (AS_t rc, container_t container, xbt_dict_t filter)
 {
   if (!TRACE_platform_topology()){
@@ -247,7 +231,7 @@ static void instr_routing_parse_start_link (sg_platf_link_cbarg_t link)
 
     container_t new = PJ_container_new (link_name, INSTR_LINK, father);
 
-    if (TRACE_categorized() || TRACE_uncategorized() || TRACE_platform()){
+    if ((TRACE_categorized() || TRACE_uncategorized() || TRACE_platform()) && (! TRACE_disable_link())) {
       type_t bandwidth = PJ_type_get_or_null ("bandwidth", new->type);
       if (bandwidth == NULL){
         bandwidth = PJ_type_variable_new ("bandwidth", NULL, new->type);
@@ -275,12 +259,15 @@ static void instr_routing_parse_start_host (sg_platf_host_cbarg_t host)
   container_t father = *(container_t*)xbt_dynar_get_ptr(currentContainer, xbt_dynar_length(currentContainer)-1);
   container_t new = PJ_container_new (host->id, INSTR_HOST, father);
 
-  if (TRACE_categorized() || TRACE_uncategorized() || TRACE_platform()) {
+  if ((TRACE_categorized() || TRACE_uncategorized() || TRACE_platform()) && (! TRACE_disable_power())) {
     type_t power = PJ_type_get_or_null ("power", new->type);
     if (power == NULL){
       power = PJ_type_variable_new ("power", NULL, new->type);
     }
-    new_pajeSetVariable (0, new, power, host->power_peak);
+
+    double current_power_state;
+    xbt_dynar_get_cpy(host->power_peak, host->pstate, &current_power_state);
+    new_pajeSetVariable (0, new, power, current_power_state);
   }
   if (TRACE_uncategorized()){
     type_t power_used = PJ_type_get_or_null ("power_used", new->type);