Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
authorJonathan Rouzaud-Cornabas <jonathan.rouzaud-cornabas@ens-lyon.fr>
Mon, 15 Apr 2013 16:10:51 +0000 (18:10 +0200)
committerJonathan Rouzaud-Cornabas <jonathan.rouzaud-cornabas@ens-lyon.fr>
Mon, 15 Apr 2013 16:10:51 +0000 (18:10 +0200)
1  2 
src/instr/instr_config.c
src/instr/instr_private.h

diff --combined src/instr/instr_config.c
@@@ -19,6 -19,7 +19,7 @@@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY (instr_
  #define OPT_TRACING_SMPI          "tracing/smpi"
  #define OPT_TRACING_SMPI_GROUP    "tracing/smpi/group"
  #define OPT_TRACING_SMPI_COMPUTING "tracing/smpi/computing"
+ #define OPT_TRACING_SMPI_INTERNALS "tracing/smpi/internals"
  #define OPT_TRACING_CATEGORIZED   "tracing/categorized"
  #define OPT_TRACING_UNCATEGORIZED "tracing/uncategorized"
  #define OPT_TRACING_MSG_PROCESS   "tracing/msg/process"
@@@ -32,8 -33,6 +33,8 @@@
  #define OPT_TRACING_COMMENT_FILE  "tracing/comment_file"
  #define OPT_VIVA_UNCAT_CONF      "viva/uncategorized"
  #define OPT_VIVA_CAT_CONF        "viva/categorized"
 +#define OPT_TRACING_DISABLE_LINK        "tracing/disable_link"
 +#define OPT_TRACING_DISABLE_POWER       "tracing/disable_power"
  
  static int trace_enabled;
  static int trace_platform;
@@@ -41,6 -40,7 +42,7 @@@ static int trace_platform_topology
  static int trace_smpi_enabled;
  static int trace_smpi_grouped;
  static int trace_smpi_computing;
+ static int trace_view_internals;
  static int trace_categorized;
  static int trace_uncategorized;
  static int trace_msg_process_enabled;
@@@ -49,8 -49,6 +51,8 @@@ static int trace_buffer
  static int trace_onelink_only;
  static int trace_disable_destroy;
  static int trace_basic;
 +static int trace_disable_link;
 +static int trace_disable_power;
  
  static int trace_configured = 0;
  static int trace_active = 0;
@@@ -65,6 -63,7 +67,7 @@@ static void TRACE_getopts(void
    trace_smpi_enabled = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_SMPI);
    trace_smpi_grouped = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_SMPI_GROUP);
    trace_smpi_computing = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_SMPI_COMPUTING);
+   trace_view_internals = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_SMPI_INTERNALS);
    trace_categorized = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_CATEGORIZED);
    trace_uncategorized = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_UNCATEGORIZED);
    trace_msg_process_enabled = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_MSG_PROCESS);
@@@ -73,8 -72,6 +76,8 @@@
    trace_onelink_only = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_ONELINK_ONLY);
    trace_disable_destroy = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_DISABLE_DESTROY);
    trace_basic = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_BASIC);
 +  trace_disable_link = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_DISABLE_LINK);
 +  trace_disable_power = xbt_cfg_get_int(_sg_cfg_set, OPT_TRACING_DISABLE_POWER);
  }
  
  static xbt_dynar_t TRACE_start_functions = NULL;
@@@ -225,6 -222,10 +228,10 @@@ int TRACE_smpi_is_computing(void
    return trace_smpi_computing;
  }
  
+ int TRACE_smpi_view_internals(void)
+ {
+   return trace_view_internals;
+ }
  
  int TRACE_categorized (void)
  {
@@@ -246,15 -247,6 +253,15 @@@ int TRACE_msg_vm_is_enabled(void
    return trace_msg_vm_enabled && TRACE_is_enabled();
  }
  
 +int TRACE_disable_link(void)
 +{
 +  return trace_disable_link && TRACE_is_enabled();
 +}
 +
 +int TRACE_disable_power(void)
 +{
 +  return trace_disable_power && TRACE_is_enabled();
 +}
  
  int TRACE_buffer (void)
  {
@@@ -352,6 -344,13 +359,13 @@@ void TRACE_global_init(int *argc, char 
                     xbt_cfgelm_int, &default_tracing_smpi_computing, 0, 1,
                     NULL, NULL);
  
+   /* smpi internals */
+   int default_tracing_smpi_internals = 0;
+   xbt_cfg_register(&_sg_cfg_set, OPT_TRACING_SMPI_INTERNALS,
+                    "View internal messages sent by Collective communications in SMPI",
+                    xbt_cfgelm_int, &default_tracing_smpi_internals, 0, 1,
+                    NULL, NULL);
    /* tracing categorized resource utilization traces */
    int default_tracing_categorized = 0;
    xbt_cfg_register(&_sg_cfg_set, OPT_TRACING_CATEGORIZED,
                     xbt_cfgelm_int, &default_tracing_msg_vm, 0, 1,
                     NULL, NULL);
  
 +  /* disable tracing link */
 +  int default_tracing_disable_link = 0;
 +  xbt_cfg_register(&_sg_cfg_set, OPT_TRACING_DISABLE_LINK,
 +                   "Do not trace link bandwidth and latency.",
 +                   xbt_cfgelm_int, &default_tracing_disable_link, 0, 1,
 +                   NULL, NULL);
 +
 +  /* disable tracing link */
 +  int default_tracing_disable_power = 0;
 +  xbt_cfg_register(&_sg_cfg_set, OPT_TRACING_DISABLE_POWER,
 +                   "Do not trace host power.",
 +                   xbt_cfgelm_int, &default_tracing_disable_power, 0, 1,
 +                   NULL, NULL);
 +
 +
    /* tracing buffer */
    int default_buffer = 1;
    xbt_cfg_register(&_sg_cfg_set, OPT_TRACING_BUFFER,
@@@ -506,6 -490,9 +520,9 @@@ void TRACE_help (int detailed
        "  This option aims at tracing computations in the application, outside SMPI\n"
        "  to allow further study of simulated or real computation time",
        detailed);
+   print_line (OPT_TRACING_SMPI_INTERNALS, "Generates tracing events corresponding",
+       "  to point-to-point messages sent by collective communications",
+       detailed);
    print_line (OPT_TRACING_MSG_PROCESS, "Trace processes behavior (MSG)",
        "  This option only has effect if this simulator is MSG-based. It traces the\n"
        "  behavior of all categorized MSG processes, grouping them by hosts. This option\n"
@@@ -142,8 -142,6 +142,8 @@@ int TRACE_uncategorized (void)
  int TRACE_msg_process_is_enabled(void);
  int TRACE_msg_vm_is_enabled(void);
  int TRACE_buffer (void);
 +int TRACE_disable_link(void);
 +int TRACE_disable_power(void);
  int TRACE_onelink_only (void);
  int TRACE_disable_destroy (void);
  int TRACE_basic (void);
@@@ -161,6 -159,7 +161,7 @@@ void instr_resume_tracing (void)
  XBT_PUBLIC(int) TRACE_smpi_is_enabled(void);
  XBT_PUBLIC(int) TRACE_smpi_is_grouped(void);
  XBT_PUBLIC(int) TRACE_smpi_is_computing(void);
+ XBT_PUBLIC(int) TRACE_smpi_view_internals(void);
  
  /* from resource_utilization.c */
  void TRACE_surf_host_set_utilization(const char *resource,