Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
add missing include for accumulate
[simgrid.git] / src / surf / instr_routing.cpp
index 575e4dd..835aee2 100644 (file)
@@ -136,7 +136,7 @@ static void recursiveGraphExtraction(simgrid::s4u::NetZone* netzone, container_t
   std::map<std::string, xbt_node_t>* nodes = new std::map<std::string, xbt_node_t>;
   std::map<std::string, xbt_edge_t>* edges = new std::map<std::string, xbt_edge_t>;
 
-  static_cast<simgrid::kernel::routing::NetZoneImpl*>(netzone)->getGraph(graph, nodes, edges);
+  static_cast<simgrid::kernel::routing::NetZoneImpl*>(netzone)->get_graph(graph, nodes, edges);
   for (auto elm : *edges) {
     xbt_edge_t edge = elm.second;
     linkContainers(simgrid::instr::Container::byName(static_cast<const char*>(edge->src->data)),
@@ -162,6 +162,9 @@ static void sg_instr_AS_begin(simgrid::s4u::NetZone& netzone)
       if (not TRACE_smpi_is_grouped())
         mpi->getOrCreateStateType("MPI_STATE");
       root->type_->getOrCreateLinkType("MPI_LINK", mpi, mpi);
+      // TODO See if we can move this to the LoadBalancer plugin
+      root->type_->getOrCreateLinkType("MIGRATE_LINK", mpi, mpi);
+      mpi->getOrCreateStateType("MIGRATE_STATE");
     }
 
     if (TRACE_needs_platform()){
@@ -219,8 +222,13 @@ static void sg_instr_new_host(simgrid::s4u::Host& host)
   if (TRACE_uncategorized())
     container->type_->getOrCreateVariableType("power_used", "0.5 0.5 0.5");
 
-  if (TRACE_smpi_is_enabled() && TRACE_smpi_is_grouped())
-    container->type_->getOrCreateContainerType("MPI")->getOrCreateStateType("MPI_STATE");
+  if (TRACE_smpi_is_enabled() && TRACE_smpi_is_grouped()) {
+    simgrid::instr::ContainerType* mpi = container->type_->getOrCreateContainerType("MPI");
+    mpi->getOrCreateStateType("MPI_STATE");
+    // TODO See if we can move this to the LoadBalancer plugin
+    root->type_->getOrCreateLinkType("MIGRATE_LINK", mpi, mpi);
+    mpi->getOrCreateStateType("MIGRATE_STATE");
+  }
 
   if (TRACE_actor_is_enabled()) {
     simgrid::instr::ContainerType* actor = container->type_->getOrCreateContainerType("ACTOR");
@@ -358,7 +366,7 @@ static void recursiveXBTGraphExtraction(xbt_graph_t graph, std::map<std::string,
     }
   }
 
-  static_cast<simgrid::kernel::routing::NetZoneImpl*>(netzone)->getGraph(graph, nodes, edges);
+  static_cast<simgrid::kernel::routing::NetZoneImpl*>(netzone)->get_graph(graph, nodes, edges);
 }
 
 xbt_graph_t instr_routing_platform_graph ()