exit(0);
} else if (!strncmp(argv[i], "--help-models", strlen("--help-models") + 1)) {
model_help("workstation", surf_workstation_model_description);
+ printf("\n");
model_help("CPU", surf_cpu_model_description);
+ printf("\n");
model_help("network", surf_network_model_description);
printf("\nLong description of all optimization levels accepted by the models of this simulator:\n");
for (i = 0; surf_optimization_mode_description[i].name; i++)
}
} else if (!strcmp(val, "no")) {
if (COORD_HOST_LEVEL)
- XBT_WARN("Setting of whether to use coordinate cannot be disabled once set.");
+ xbt_die("Setting of whether to use coordinate cannot be disabled once set.");
} else {
- XBT_WARN("Command line setting of whether to use coordinates must be either \"yes\" or \"no\"");
+ xbt_die("Command line setting of whether to use coordinates must be either \"yes\" or \"no\"");
}
}
sprintf(p,
".\n (use 'help' as a value to see the long description of each model)");
default_value = xbt_strdup("Cas01");
- xbt_cfg_register(&_surf_cfg_set,
- "cpu/model", description, xbt_cfgelm_string,
+ xbt_cfg_register(&_surf_cfg_set, "cpu/model", description, xbt_cfgelm_string,
&default_value, 1, 1, &_surf_cfg_cb__cpu_model, NULL);
sprintf(description,
sprintf(p,
".\n (use 'help' as a value to see the long description of each optimization mode)");
default_value = xbt_strdup("Lazy");
- xbt_cfg_register(&_surf_cfg_set,
- "cpu/optim", description, xbt_cfgelm_string,
+ xbt_cfg_register(&_surf_cfg_set, "cpu/optim", description, xbt_cfgelm_string,
&default_value, 1, 1, &_surf_cfg_cb__optimization_mode, NULL);
sprintf(description,
sprintf(p,
".\n (use 'help' as a value to see the long description of each model)");
default_value = xbt_strdup("LV08");
- xbt_cfg_register(&_surf_cfg_set,
- "network/model", description, xbt_cfgelm_string,
+ xbt_cfg_register(&_surf_cfg_set, "network/model", description, xbt_cfgelm_string,
&default_value, 1, 1, &_surf_cfg_cb__network_model,
NULL);
sprintf(p,
".\n (use 'help' as a value to see the long description of each optimization mode)");
default_value = xbt_strdup("Lazy");
- xbt_cfg_register(&_surf_cfg_set,
- "network/optim", description, xbt_cfgelm_string,
+ xbt_cfg_register(&_surf_cfg_set, "network/optim", description, xbt_cfgelm_string,
&default_value, 1, 1, &_surf_cfg_cb__optimization_mode, NULL);
sprintf(description,
surf_workstation_model_description[i].name);
sprintf(p,
".\n (use 'help' as a value to see the long description of each model)");
- default_value = xbt_strdup("current_default");
- xbt_cfg_register(&_surf_cfg_set,
- "workstation/model", description, xbt_cfgelm_string,
+ default_value = xbt_strdup("default");
+ xbt_cfg_register(&_surf_cfg_set, "workstation/model", description, xbt_cfgelm_string,
&default_value, 1, 1,
&_surf_cfg_cb__workstation_model, NULL);
xbt_free(description);
- default_value = xbt_strdup("Full");
- xbt_cfg_register(&_surf_cfg_set, "routing",
- "Model to use to store the routing information",
- xbt_cfgelm_string, &default_value, 1, 1, NULL, NULL);
-
- xbt_cfg_register(&_surf_cfg_set, "TCP_gamma",
+ xbt_cfg_register(&_surf_cfg_set, "network/TCP_gamma",
"Size of the biggest TCP window (cat /proc/sys/net/ipv4/tcp_[rw]mem for recv/send window; Use the last given value, which is the max window size)",
xbt_cfgelm_double, NULL, 1, 1,
_surf_cfg_cb__tcp_gamma, NULL);
- xbt_cfg_setdefault_double(_surf_cfg_set, "TCP_gamma", 20000.0);
+ xbt_cfg_setdefault_double(_surf_cfg_set, "network/TCP_gamma", 20000.0);
xbt_cfg_register(&_surf_cfg_set, "maxmin/precision",
- "Minimum retained action value when updating simulation",
+ "Numerical precision used when updating simulation models (epsilon in double comparisons)",
xbt_cfgelm_double, NULL, 1, 1, _surf_cfg_cb__maxmin_precision, NULL);
xbt_cfg_setdefault_double(_surf_cfg_set, "maxmin/precision", 0.00001); // FIXME use setdefault everywhere here!
xbt_cfg_set_int(_surf_cfg_set, "model-check", default_value_int); */
/* do verbose-exit */
- default_value_int = 0;
+ default_value_int = 1;
xbt_cfg_register(&_surf_cfg_set, "verbose-exit",
"Activate the \"do nothing\" mode in Ctrl-C",
xbt_cfgelm_int, &default_value_int, 0, 1,
/* stack size of contexts in Ko */
default_value_int = 128;
xbt_cfg_register(&_surf_cfg_set, "contexts/stack_size",
- "Stack size of contexts in Ko (ucontext or raw only)",
+ "Stack size of contexts in Kib (ucontext or raw only)",
xbt_cfgelm_int, &default_value_int, 1, 1,
_surf_cfg_cb_context_stack_size, NULL);
/* number of parallel threads for user processes */
default_value_int = 1;
xbt_cfg_register(&_surf_cfg_set, "contexts/nthreads",
- "Number of parallel threads for user contexts (EXPERIMENTAL)",
+ "Number of parallel threads used to execute user contexts",
xbt_cfgelm_int, &default_value_int, 1, 1,
_surf_cfg_cb_contexts_nthreads, NULL);
/* minimal number of user contexts to be run in parallel */
- default_value_int = 1;
+ default_value_int = 2;
xbt_cfg_register(&_surf_cfg_set, "contexts/parallel_threshold",
"Minimal number of user contexts to be run in parallel (raw contexts only)",
xbt_cfgelm_int, &default_value_int, 1, 1,
/* minimal number of user contexts to be run in parallel */
default_value = xbt_strdup("futex");
- xbt_cfg_register(&_surf_cfg_set, "contexts/parallel_mode",
- "Synchronization mode to use when running contexts in parallel",
+ xbt_cfg_register(&_surf_cfg_set, "contexts/synchro",
+ "Synchronization mode to use when running contexts in parallel (either futex, posix or busy_wait)",
xbt_cfgelm_string, &default_value, 1, 1,
_surf_cfg_cb_contexts_parallel_mode, NULL);
default_value = xbt_strdup("no");
- xbt_cfg_register(&_surf_cfg_set, "coordinates",
- "\"yes\" or \"no\" (FIXME: document)",
+ xbt_cfg_register(&_surf_cfg_set, "network/coordinates",
+ "\"yes\" or \"no\", specifying whether we use a coordinate-based routing (as Vivaldi)",
xbt_cfgelm_string, &default_value, 1, 1,
_surf_cfg_cb__surf_network_coordinates, NULL);
- xbt_cfg_setdefault_string(_surf_cfg_set, "coordinates", default_value);
+ xbt_cfg_setdefault_string(_surf_cfg_set, "network/coordinates", default_value);
default_value_int = 0;
xbt_cfg_register(&_surf_cfg_set, "network/crosstraffic",