X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/82bebb568ecbca2bcac029c94e62e7e332743a58..87f4d514f71c56a1a66bd786329474e2f8a975ba:/src/simgrid/sg_config.c diff --git a/src/simgrid/sg_config.c b/src/simgrid/sg_config.c index 65878a0af4..9117342df3 100644 --- a/src/simgrid/sg_config.c +++ b/src/simgrid/sg_config.c @@ -342,6 +342,21 @@ static void _sg_cfg_cb__coll_scatter(const char *name, int pos){ static void _sg_cfg_cb__coll_barrier(const char *name, int pos){ _sg_cfg_cb__coll("barrier", mpi_coll_barrier_description, name, pos); } + +static void _sg_cfg_cb__wtime_sleep(const char *name, int pos){ + smpi_wtime_sleep = xbt_cfg_get_double(_sg_cfg_set, name); +} + +static void _sg_cfg_cb__iprobe_sleep(const char *name, int pos){ + smpi_iprobe_sleep = xbt_cfg_get_double(_sg_cfg_set, name); +} + +static void _sg_cfg_cb__test_sleep(const char *name, int pos){ + smpi_test_sleep = xbt_cfg_get_double(_sg_cfg_set, name); +} + + + #endif /* callback of the inclusion path */ @@ -612,7 +627,7 @@ void sg_config_init(int *argc, char **argv) xbt_cfg_register(&_sg_cfg_set, "model-check/soft-dirty", "Use sparse per-page snapshots.", xbt_cfgelm_boolean, 1, 1, _mc_cfg_cb_soft_dirty, NULL); - xbt_cfg_setdefault_boolean(_sg_cfg_set, "model-check/soft-dirty", "yes"); + xbt_cfg_setdefault_boolean(_sg_cfg_set, "model-check/soft-dirty", "no"); /* do liveness model-checking */ xbt_cfg_register(&_sg_cfg_set, "model-check/property", @@ -822,6 +837,11 @@ void sg_config_init(int *argc, char **argv) xbt_cfgelm_string, 1, 1, NULL, NULL); xbt_cfg_setdefault_string(_sg_cfg_set, "smpi/lat_factor", "65472:11.6436;15424:3.48845;9376:2.59299;5776:2.18796;3484:1.88101;1426:1.61075;732:1.9503;257:1.95341;0:2.01467"); + xbt_cfg_register(&_sg_cfg_set, "smpi/IB_penalty_factors", + "Correction factor to communications using Infiniband model with contention (default value based on Stampede cluster profiling)", + xbt_cfgelm_string, 1, 1, NULL, NULL); + xbt_cfg_setdefault_string(_sg_cfg_set, "smpi/IB_penalty_factors", "0.965;0.925;1.35"); + xbt_cfg_register(&_sg_cfg_set, "smpi/os", "Small messages timings (MPI_Send minimum time for small messages)", xbt_cfgelm_string, 1, 1, NULL, NULL); @@ -839,9 +859,19 @@ void sg_config_init(int *argc, char **argv) xbt_cfg_register(&_sg_cfg_set, "smpi/iprobe", "Minimum time to inject inside a call to MPI_Iprobe", - xbt_cfgelm_double, 1, 1, NULL, NULL); + xbt_cfgelm_double, 1, 1, _sg_cfg_cb__iprobe_sleep, NULL); xbt_cfg_setdefault_double(_sg_cfg_set, "smpi/iprobe", 1e-4); + xbt_cfg_register(&_sg_cfg_set, "smpi/test", + "Minimum time to inject inside a call to MPI_Test", + xbt_cfgelm_double, 1, 1, _sg_cfg_cb__test_sleep, NULL); + xbt_cfg_setdefault_double(_sg_cfg_set, "smpi/test", 1e-4); + + xbt_cfg_register(&_sg_cfg_set, "smpi/wtime", + "Minimum time to inject inside a call to MPI_Wtime", + xbt_cfgelm_double, 1, 1, _sg_cfg_cb__wtime_sleep, NULL); + xbt_cfg_setdefault_double(_sg_cfg_set, "smpi/wtime", 0.0); + xbt_cfg_register(&_sg_cfg_set, "smpi/coll_selector", "Which collective selector to use", xbt_cfgelm_string, 1, 1, NULL, NULL);