Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[mc] Add option --cfg=model-check/sparse-checkpoint:yes to enable per page snapshot
authorGabriel Corona <gabriel.corona@loria.fr>
Tue, 17 Jun 2014 12:42:38 +0000 (14:42 +0200)
committerGabriel Corona <gabriel.corona@loria.fr>
Tue, 17 Jun 2014 12:42:38 +0000 (14:42 +0200)
src/mc/mc_global.c
src/simgrid/sg_config.c

index e909cc6..b22364d 100644 (file)
@@ -73,7 +73,7 @@ void _mc_cfg_cb_sparse_checkpoint(const char *name, int pos) {
   if (_sg_cfg_init_status && !_sg_do_model_check) {
     xbt_die("You are specifying a checkpointing value after the initialization (through MSG_config?), but model-checking was not activated at config time (through --cfg=model-check:1). This won't work, sorry.");
   }
-  _sg_mc_sparse_checkpoint = xbt_cfg_get_int(_sg_cfg_set, name);
+  _sg_mc_sparse_checkpoint = xbt_cfg_get_boolean(_sg_cfg_set, name);
 }
 
 void _mc_cfg_cb_property(const char *name, int pos)
index 8e456dc..d9dea55 100644 (file)
@@ -602,6 +602,12 @@ void sg_config_init(int *argc, char **argv)
                      xbt_cfgelm_int, 1, 1, _mc_cfg_cb_checkpoint, NULL);
     xbt_cfg_setdefault_int(_sg_cfg_set, "model-check/checkpoint", 0);
 
+    /* do stateful model-checking */
+    xbt_cfg_register(&_sg_cfg_set, "model-check/sparse-checkpoint",
+                     "Use sparse per-page snapshots.",
+                     xbt_cfgelm_boolean, 1, 1, _mc_cfg_cb_sparse_checkpoint, NULL);
+    xbt_cfg_setdefault_boolean(_sg_cfg_set, "model-check/sparse-checkpoint", "no");
+
     /* do liveness model-checking */
     xbt_cfg_register(&_sg_cfg_set, "model-check/property",
                      "Specify the name of the file containing the property. It must be the result of the ltl2ba program.",