X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/96cedde3cdbc0b8ffc3f096a1b65d021b0226f99..6d004c352f7b26fba38486001f874e65466b5bee:/src/mc/mc_config.cpp diff --git a/src/mc/mc_config.cpp b/src/mc/mc_config.cpp index 5f7e1dcf6b..265601dcfc 100644 --- a/src/mc/mc_config.cpp +++ b/src/mc/mc_config.cpp @@ -3,21 +3,13 @@ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "xbt/config.hpp" -#include "xbt/log.h" -#include - #include "src/mc/mc_replay.hpp" -#include - #include - #if SIMGRID_HAVE_MC -#include "src/mc/mc_private.hpp" #include "src/mc/mc_safety.hpp" #endif -#include "src/mc/mc_record.hpp" +#include XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_config, mc, "Configuration of the Model Checker"); @@ -28,9 +20,7 @@ namespace mc { simgrid::mc::ReductionMode reduction_mode = simgrid::mc::ReductionMode::unset; } } -#endif - -#if !SIMGRID_HAVE_MC +#else #define _sg_do_model_check 0 #endif @@ -54,8 +44,6 @@ simgrid::config::Flag _sg_mc_timeout{ int _sg_do_model_check = 0; int _sg_mc_max_visited_states = 0; -simgrid::config::Flag _sg_do_model_check_record{"model-check/record", "Record the model-checking paths", false}; - 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 " @@ -63,12 +51,6 @@ simgrid::config::Flag _sg_mc_checkpoint{ "compromises between speed and memory consumption.", 0, [](int) { _mc_cfg_cb_check("checkpointing value"); }}; -simgrid::config::Flag _sg_mc_sparse_checkpoint{"model-check/sparse-checkpoint", "Use sparse per-page snapshots.", - false, [](bool) { _mc_cfg_cb_check("checkpointing value"); }}; - -simgrid::config::Flag _sg_mc_ksm{"model-check/ksm", "Kernel same-page merging", false, - [](bool) { _mc_cfg_cb_check("KSM value"); }}; - simgrid::config::Flag _sg_mc_property_file{ "model-check/property", "Name of the file containing the property, as formatted by the ltl2ba program.", "", [](const std::string&) { _mc_cfg_cb_check("property"); }}; @@ -91,6 +73,14 @@ simgrid::config::Flag _sg_mc_send_determinism{ _mc_cfg_cb_check("value to enable/disable the detection of send-determinism in the communications schemes"); }}; +simgrid::config::Flag _sg_mc_buffering{ + "smpi/buffering", + "Buffering semantic to use for MPI (only used in MC)", + "zero", + {{"zero", "No system buffering: MPI_Send is blocking"}, + {"infty", "Infinite system buffering: MPI_Send returns immediately"}}, + [](const std::string& value) { _mc_cfg_cb_check("buffering mode"); }}; + static simgrid::config::Flag _sg_mc_reduce{ "model-check/reduction", "Specify the kind of exploration reduction (either none or DPOR)", "dpor", [](const std::string& value) { @@ -104,17 +94,6 @@ static simgrid::config::Flag _sg_mc_reduce{ xbt_die("configuration option model-check/reduction can only take 'none' or 'dpor' as a value"); }}; -simgrid::config::Flag _sg_mc_hash{ - "model-check/hash", "Whether to enable state hash for state comparison (experimental)", false, - [](bool) { _mc_cfg_cb_check("value to enable/disable the use of global hash to speedup state comparaison"); }}; - -simgrid::config::Flag _sg_mc_snapshot_fds{ - "model-check/snapshot-fds", - {"model-check/snapshot_fds"}, - "Whether file descriptors must be snapshoted (currently unusable)", - false, - [](bool) { _mc_cfg_cb_check("value to enable/disable the use of FD snapshotting"); }}; - simgrid::config::Flag _sg_mc_max_depth{"model-check/max-depth", {"model-check/max_depth"}, "Maximal exploration depth (default: 1000)",