Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use standard __func__ instead of __FUNCTION__.
[simgrid.git] / src / smpi / internals / instr_smpi.cpp
index d13557d..2e3876e 100644 (file)
@@ -10,7 +10,7 @@
 #include <cstdarg>
 #include <cwchar>
 #include <deque>
-#include <simgrid/sg_config.h>
+#include <simgrid/sg_config.hpp>
 #include <string>
 
 XBT_LOG_NEW_DEFAULT_SUBCATEGORY(instr_smpi, instr, "Tracing SMPI");
@@ -155,12 +155,10 @@ void TRACE_smpi_init(int rank)
   }else{
     father = simgrid::instr::Container::getRoot();
   }
-  xbt_assert(father != nullptr, "Could not find a parent for mpi rank %s at function %s", str.c_str(), __FUNCTION__);
-#if HAVE_PAPI
-  container_t container =
-#endif
-      new simgrid::instr::Container(str, "MPI", father);
+  xbt_assert(father != nullptr, "Could not find a parent for mpi rank %s at function %s", str.c_str(), __func__);
+  father->createChild(str, "MPI");
 #if HAVE_PAPI
+  container_t container   = simgrid::instr::Container::byName(str);
   papi_counter_t counters = smpi_process()->papi_counters();
 
   for (auto const& it : counters) {
@@ -180,9 +178,7 @@ void TRACE_smpi_finalize(int rank)
   if (not TRACE_smpi_is_enabled())
     return;
 
-  container_t container = smpi_container(rank);
-  container->removeFromParent();
-  delete container;
+  smpi_container(rank)->removeFromParent();
 }
 
 void TRACE_smpi_computing_init(int rank)
@@ -206,13 +202,6 @@ void TRACE_smpi_computing_out(int rank)
     smpi_container(rank)->getState("MPI_STATE")->popEvent();
 }
 
-void TRACE_smpi_sleeping_init(int rank) // FIXME: this function is never called
-{
-  //first use, initialize the color in the trace
-  if (TRACE_smpi_is_enabled() && TRACE_smpi_is_sleeping())
-    smpi_container(rank)->getState("MPI_STATE")->addEntityValue("sleeping", instr_find_color("sleeping"));
-}
-
 void TRACE_smpi_sleeping_in(int rank, double duration)
 {
   if (TRACE_smpi_is_enabled() && TRACE_smpi_is_sleeping())