X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6a908b79ea45f85f305620c09375b72483b7eee9..824740eb0df1dedddb86035ff3730d87e037f356:/src/mc/mc_config.cpp diff --git a/src/mc/mc_config.cpp b/src/mc/mc_config.cpp index 663961d2b2..35381d3cb3 100644 --- a/src/mc/mc_config.cpp +++ b/src/mc/mc_config.cpp @@ -8,7 +8,7 @@ #include "src/simgrid/sg_config.hpp" #include -#if SIMGRID_HAVE_MC +#if SIMGRID_HAVE_STATEFUL_MC #include #endif @@ -18,14 +18,10 @@ simgrid::mc::ModelCheckingMode simgrid::mc::model_checking_mode = simgrid::mc::M static void _mc_cfg_cb_check(const char* spec, bool more_check = true) { -#if SIMGRID_HAVE_MC xbt_assert(_sg_cfg_init_status == 0 || MC_is_active() || MC_record_replay_is_active() || not more_check, "Specifying a %s is only allowed within the model-checker. Please use simgrid-mc, or specify this option " "after the replay path.", spec); -#else - xbt_die("Specifying a %s is only allowed within the model-checker. Please enable it before the compilation.", spec); -#endif } /* Replay (this part is enabled even if MC it disabled) */ @@ -41,7 +37,6 @@ simgrid::config::Flag _sg_mc_record_path{ MC_record_path() = value; }}; -#if SIMGRID_HAVE_MC simgrid::config::Flag _sg_mc_timeout{ "model-check/timeout", "Whether to enable timeouts for wait requests", false, [](bool) { _mc_cfg_cb_check("value to enable/disable timeout for wait requests", not MC_record_replay_is_active()); @@ -60,14 +55,14 @@ simgrid::config::Flag _sg_mc_sleep_set{ "model-check/sleep-set", "Whether to enable the use of sleep-set in the reduction algorithm", false, [](bool) { _mc_cfg_cb_check("value to enable/disable the use of sleep-set in the reduction algorithm"); }}; -simgrid::config::Flag _sg_mc_guided{ - "model-check/guided-mc", "Specify the the kind of heuristic to use for guided model-checking", "none", +simgrid::config::Flag _sg_mc_strategy{ + "model-check/strategy", "Specify the the kind of heuristic to use for guided model-checking", "none", [](std::string_view value) { if (value != "none" && value != "nb_wait") - xbt_die("configuration option 'model-check/reduction' can only take 'none' or 'dpor' as a value"); + xbt_die("configuration option 'model-check/guided-mc' can only take 'none' or 'nb_wait' as a value"); }}; - +#if SIMGRID_HAVE_STATEFUL_MC simgrid::config::Flag _sg_mc_checkpoint{ "model-check/checkpoint", "Specify the amount of steps between checkpoints during stateful model-checking " "(default: 0 => stateless verification). If value=1, one checkpoint is saved for each " @@ -100,6 +95,7 @@ simgrid::config::Flag _sg_mc_unfolding_checker{ "Whether to enable the unfolding-based dynamic partial order reduction to MPI programs", false, [](bool) { _mc_cfg_cb_check("value to to enable/disable the unfolding-based dynamic partial order reduction to MPI programs"); }}; +#endif simgrid::config::Flag _sg_mc_buffering{ "smpi/buffering", @@ -137,5 +133,3 @@ bool simgrid::mc::cfg_use_DPOR() } return cfg_mc_reduction.get() == "dpor"; } - -#endif