Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
rewrite the MPI execution sampling facility (previous implem was deeply bugged)
[simgrid.git] / src / smpi / smpi_global.c
index 69b94b8..5a2c2ce 100644 (file)
@@ -150,36 +150,31 @@ smx_rdv_t smpi_process_remote_mailbox(int index) {
   return data->mailbox;
 }
 
-xbt_os_timer_t smpi_process_timer(void)
-{
+xbt_os_timer_t smpi_process_timer(void) {
   smpi_process_data_t data = smpi_process_data();
 
   return data->timer;
 }
 
-void smpi_process_simulated_start(void)
-{
+void smpi_process_simulated_start(void) {
   smpi_process_data_t data = smpi_process_data();
 
   data->simulated = SIMIX_get_clock();
 }
 
-double smpi_process_simulated_elapsed(void)
-{
+double smpi_process_simulated_elapsed(void) {
   smpi_process_data_t data = smpi_process_data();
 
   return SIMIX_get_clock() - data->simulated;
 }
 
-MPI_Comm smpi_process_comm_self(void)
-{
+MPI_Comm smpi_process_comm_self(void) {
   smpi_process_data_t data = smpi_process_data();
 
   return data->comm_self;
 }
 
-void print_request(const char *message, MPI_Request request)
-{
+void print_request(const char *message, MPI_Request request) {
   XBT_DEBUG("%s  request %p  [buf = %p, size = %zu, src = %d, dst = %d, tag = %d, flags = %x]",
          message, request, request->buf, request->size,
          request->src, request->dst, request->tag, request->flags);
@@ -228,6 +223,8 @@ void smpi_global_destroy(void)
   }
   xbt_free(process_data);
   process_data = NULL;
+
+  smpi_free_static();
 }
 
 /* Fortran specific stuff */
@@ -247,10 +244,22 @@ int MAIN__(void)
   srand(SMPI_RAND_SEED);
 
   if(getenv("SMPI_PRETEND_CC") != NULL) {
-       /* Hack to ensure that smpicc can pretend to be a simple compiler. Particularly handy to pass it to the configuration tools */
+  /* Hack to ensure that smpicc can pretend to be a simple compiler. Particularly handy to pass it to the configuration tools */
     return 0;
   }
 
+  /* Connect log categories.  See xbt/log.c */
+  XBT_LOG_CONNECT(smpi);
+  XBT_LOG_CONNECT(smpi_base);
+  XBT_LOG_CONNECT(smpi_bench);
+  XBT_LOG_CONNECT(smpi_coll);
+  XBT_LOG_CONNECT(smpi_comm);
+  XBT_LOG_CONNECT(smpi_group);
+  XBT_LOG_CONNECT(smpi_kernel);
+  XBT_LOG_CONNECT(smpi_mpi);
+  XBT_LOG_CONNECT(smpi_mpi_dt);
+  XBT_LOG_CONNECT(smpi_pmpi);
+
 #ifdef HAVE_TRACING
   TRACE_global_init(&xargc, xargv);
 #endif