sg_maxmin_precision = xbt_cfg_get_double(_sg_cfg_set, name);
}
+static void _sg_cfg_cb__surf_precision(const char* name, int pos)
+{
+ sg_surf_precision = xbt_cfg_get_double(_sg_cfg_set, name);
+}
+
static void _sg_cfg_cb__sender_gap(const char* name, int pos)
{
sg_sender_gap = xbt_cfg_get_double(_sg_cfg_set, name);
xbt_cfgelm_double, 1, 1, _sg_cfg_cb__tcp_gamma, NULL);
xbt_cfg_setdefault_double(_sg_cfg_set, "network/TCP_gamma", 4194304.0);
+ xbt_cfg_register(&_sg_cfg_set, "surf/precision",
+ "Numerical precision used when updating simulation times (hence this value is expressed in seconds)",
+ xbt_cfgelm_double, 1, 1, _sg_cfg_cb__surf_precision, NULL);
+ xbt_cfg_setdefault_double(_sg_cfg_set, "surf/precision", 0.00001);
+
xbt_cfg_register(&_sg_cfg_set, "maxmin/precision",
- "Numerical precision used when updating simulation models (epsilon in double comparisons)",
+ "Numerical precision used when computing resource sharing (hence this value is expressed in ops/sec or bytes/sec)",
xbt_cfgelm_double, 1, 1, _sg_cfg_cb__maxmin_precision, NULL);
xbt_cfg_setdefault_double(_sg_cfg_set, "maxmin/precision", 0.00001);
/* Enable/disable global hash computation with model-checking */
xbt_cfg_register(&_sg_cfg_set, "model-check/hash",
- "Enable/Disable state hash for state comparison",
+ "Enable/Disable state hash for state comparison (exprimental)",
xbt_cfgelm_boolean, 1, 1, _mc_cfg_cb_hash, NULL);
xbt_cfg_setdefault_boolean(_sg_cfg_set, "model-check/hash", "no");
xbt_cfg_register(&_sg_cfg_set, "contexts/guard_size",
"Guard size for contexts stacks in memory pages",
xbt_cfgelm_int, 1, 1, _sg_cfg_cb_context_guard_size, NULL);
+#if defined(_XBT_WIN32) || (PTH_STACKGROWTH != -1)
+ xbt_cfg_setdefault_int(_sg_cfg_set, "contexts/guard_size", 0);
+#else
xbt_cfg_setdefault_int(_sg_cfg_set, "contexts/guard_size", 1);
+#endif
/* No, it was not set yet (the above setdefault() changed this to 1). */
smx_context_guard_size_was_set = 0;
xbt_cfgelm_int, 1, 1, NULL, NULL);
xbt_cfg_setdefault_int(_sg_cfg_set, "smpi/send_is_detached_thres", 65536);
+ xbt_cfg_register(&_sg_cfg_set, "smpi/privatize_global_variables",
+ "Boolean indicating whether we should privatize global variable at runtime.",
+ xbt_cfgelm_boolean, 1, 1, NULL, NULL);
+ xbt_cfg_setdefault_boolean(_sg_cfg_set, "smpi/privatize_global_variables", "no");
+
//For smpi/bw_factor and smpi/lat_factor
//Default value have to be "threshold0:value0;threshold1:value1;...;thresholdN:valueN"
//test is if( size >= thresholdN ) return valueN;
xbt_assert(network_model_name,
"Set a network model to use with the 'compound' workstation model");
+ if(surf_cpu_model_init_preparse){
+ surf_cpu_model_init_preparse();
+ } else {
+ cpu_id =
+ find_model_description(surf_cpu_model_description, cpu_model_name);
+ surf_cpu_model_description[cpu_id].model_init_preparse();
+ }
+
network_id =
find_model_description(surf_network_model_description,
network_model_name);
- cpu_id =
- find_model_description(surf_cpu_model_description, cpu_model_name);
-
- surf_cpu_model_description[cpu_id].model_init_preparse();
surf_network_model_description[network_id].model_init_preparse();
}