Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Kill a 'unused variable' warning when compiling without GTNets
[simgrid.git] / src / surf / surf_config.c
index 649e6fe..7a46acd 100644 (file)
@@ -15,9 +15,7 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_config, surf,
                                 "About the configuration of surf (and the rest of the simulation)");
 
 xbt_cfg_t _surf_cfg_set = NULL;
-#ifdef HAVE_GTNETS
-extern double sg_gtnets_jitter;
-#endif
+
 
 /* Parse the command line, looking for options */
 static void surf_config_cmd_line(int *argc, char **argv)
@@ -120,6 +118,9 @@ static void _surf_cfg_cb__surf_maxmin_selective_update(const char *name, int pos
 static void _surf_cfg_cb__gtnets_jitter(const char *name, int pos){
        sg_gtnets_jitter = xbt_cfg_get_double(_surf_cfg_set, name);
 }
+static void _surf_cfg_cb__gtnets_jitter_seed(const char *name, int pos){
+       sg_gtnets_jitter_seed = xbt_cfg_get_int(_surf_cfg_set, name);
+}
 #endif
 
 /* create the config set, register what should be and parse the command line*/
@@ -132,7 +133,7 @@ void surf_config_init(int *argc, char **argv)
 
     char *description = xbt_malloc(1024), *p = description;
     char *default_value;
-               int default_value_int;
+       int default_value_int;
     int i;
 
     sprintf(description, "The model to use for the CPU. Possible values: ");
@@ -202,7 +203,12 @@ void surf_config_init(int *argc, char **argv)
     xbt_cfg_register(&_surf_cfg_set, "gtnets_jitter",
                      "Double value to oscillate the link latency, uniformly in random interval [-latency*gtnets_jitter,latency*gtnets_jitter)", xbt_cfgelm_double,
                      NULL, 1, 1, _surf_cfg_cb__gtnets_jitter, NULL);
-    xbt_cfg_set_double(_surf_cfg_set, "gtnets_jitter", 1.0);
+    xbt_cfg_set_double(_surf_cfg_set, "gtnets_jitter", 0.0);
+
+    default_value_int = 10;
+    xbt_cfg_register(&_surf_cfg_set, "gtnets_jitter_seed",
+                     "Use a positive seed to reproduce jitted results, value must be in [1,1e8], default is 10",
+                     xbt_cfgelm_int, &default_value_int, 0, 1, _surf_cfg_cb__gtnets_jitter_seed, NULL);
 #endif
 
     if (!surf_path) {