X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e0b9d36c291764ef931ce9a23db0d95caf23c045..65e338fbfd769d49b29242bfe56cde18c03b6074:/src/instr/interface.c diff --git a/src/instr/interface.c b/src/instr/interface.c index fc0b886651..7c42143468 100644 --- a/src/instr/interface.c +++ b/src/instr/interface.c @@ -4,11 +4,12 @@ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "instr/private.h" - +#include "simgrid_config.h" #ifdef HAVE_TRACING +#include "instr/private.h" + XBT_LOG_NEW_DEFAULT_CATEGORY(tracing,"Tracing Interface"); static xbt_dict_t defined_types; @@ -78,6 +79,7 @@ int TRACE_start () if (IS_TRACING_SMPI){ pajeDefineContainerType ("MPI_PROCESS", "HOST", "MPI_PROCESS"); pajeDefineStateType ("MPI_STATE", "MPI_PROCESS", "MPI_STATE"); + pajeDefineLinkType ("MPI_LINK", "0", "MPI_PROCESS", "MPI_PROCESS", "MPI_LINK"); } /* creating the platform */ @@ -87,6 +89,7 @@ int TRACE_start () defined_types = xbt_dict_new(); created_categories = xbt_dict_new(); __TRACE_msg_init(); + __TRACE_category_init (); __TRACE_surf_init(); __TRACE_msg_process_init (); __TRACE_smpi_init (); @@ -193,4 +196,18 @@ void TRACE_mark (const char *mark_type, const char *mark_value) pajeNewEvent (MSG_get_clock(), mark_type, "0", mark_value); } +int TRACE_smpi_set_category (const char *category) +{ + //if category is NULL, trace of platform is disabled + if (!IS_TRACING) return 1; + if (category != NULL){ + int ret = TRACE_category (category); + __TRACE_category_set (SIMIX_process_self(), category); + return ret; + }else{ + __TRACE_category_unset (SIMIX_process_self()); + return 0; + } +} + #endif /* HAVE_TRACING */