- xbt_cfg_register_string("contexts/synchro", "futex", _sg_cfg_cb_contexts_parallel_mode,
- "Synchronization mode to use when running contexts in parallel (either futex, posix or busy_wait)");
-#else //No futex on mac and posix is unimplememted yet
- xbt_cfg_register_string("contexts/synchro", "busy_wait", _sg_cfg_cb_contexts_parallel_mode,
- "Synchronization mode to use when running contexts in parallel (either futex, posix or busy_wait)");
-#endif
-
- xbt_cfg_register_boolean("network/crosstraffic", "yes", _sg_cfg_cb__surf_network_crosstraffic,
- "Activate the interferences between uploads and downloads for fluid max-min models (LV08, CM02)");
-
- // For smpi/bw-factor and smpi/lat-factor
- // SMPI model can be used without enable_smpi, so keep this out of the ifdef.
- xbt_cfg_register_string("smpi/bw-factor",
- "65472:0.940694;15424:0.697866;9376:0.58729;5776:1.08739;3484:0.77493;1426:0.608902;732:0.341987;257:0.338112;0:0.812084", nullptr,
- "Bandwidth factors for smpi. Format: 'threshold0:value0;threshold1:value1;...;thresholdN:valueN', meaning if(size >=thresholdN ) return valueN.");
- xbt_cfg_register_alias("smpi/bw-factor","smpi/bw_factor");
-
- xbt_cfg_register_string("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", nullptr, "Latency factors for smpi.");
- xbt_cfg_register_alias("smpi/lat-factor","smpi/lat_factor");
-
- xbt_cfg_register_string("smpi/IB-penalty-factors", "0.965;0.925;1.35", nullptr,
- "Correction factor to communications using Infiniband model with contention (default value based on Stampede cluster profiling)");
- xbt_cfg_register_alias("smpi/IB-penalty-factors","smpi/IB_penalty_factors");
-
-#if HAVE_SMPI
- xbt_cfg_register_double("smpi/host-speed", 20000.0, nullptr, "Speed of the host running the simulation (in flop/s). Used to bench the operations.");
- xbt_cfg_register_alias("smpi/host-speed","smpi/running_power");
- xbt_cfg_register_alias("smpi/host-speed","smpi/running-power");
-
- xbt_cfg_register_boolean("smpi/keep-temps", "no", nullptr, "Whether we should keep the generated temporary files.");
-
- xbt_cfg_register_boolean("smpi/display-timing", "no", nullptr, "Whether we should display the timing after simulation.");
- xbt_cfg_register_alias("smpi/display-timing", "smpi/display_timing");
-
- xbt_cfg_register_boolean("smpi/simulate-computation", "yes", nullptr, "Whether the computational part of the simulated application should be simulated.");
- xbt_cfg_register_alias("smpi/simulate-computation","smpi/simulate_computation");
-
- xbt_cfg_register_string("smpi/shared-malloc", "global", nullptr,
- "Whether SMPI_SHARED_MALLOC is enabled. Disable it for debugging purposes.");
- xbt_cfg_register_alias("smpi/shared-malloc", "smpi/use-shared-malloc");
- xbt_cfg_register_alias("smpi/shared-malloc", "smpi/use_shared_malloc");
- xbt_cfg_register_double("smpi/shared-malloc-blocksize", 1UL << 20, nullptr, "Size of the bogus file which will be created for global shared allocations");
- xbt_cfg_register_string("smpi/shared-malloc-hugepage", "", nullptr,
- "Path to a mounted hugetlbfs, to use huge pages with shared malloc.");
-
- xbt_cfg_register_double("smpi/cpu-threshold", 1e-6, nullptr, "Minimal computation time (in seconds) not discarded, or -1 for infinity.");
- xbt_cfg_register_alias("smpi/cpu-threshold", "smpi/cpu_threshold");
-
- xbt_cfg_register_int("smpi/async-small-thresh", 0, nullptr,
- "Maximal size of messages that are to be sent asynchronously, without waiting for the receiver");
- xbt_cfg_register_alias("smpi/async-small-thresh","smpi/async_small_thresh");
- xbt_cfg_register_alias("smpi/async-small-thresh","smpi/async_small_thres");
-
- xbt_cfg_register_boolean("smpi/trace-call-location", "no", nullptr, "Should filename and linenumber of MPI calls be traced?");
-
- xbt_cfg_register_int("smpi/send-is-detached-thresh", 65536, nullptr,
- "Threshold of message size where MPI_Send stops behaving like MPI_Isend and becomes MPI_Ssend");
- xbt_cfg_register_alias("smpi/send-is-detached-thresh","smpi/send_is_detached_thresh");
- xbt_cfg_register_alias("smpi/send-is-detached-thresh","smpi/send_is_detached_thres");
-
- const char* default_privatization = std::getenv("SMPI_PRIVATIZATION");
- if (default_privatization == nullptr)
- default_privatization = "no";
-
- xbt_cfg_register_string("smpi/privatization", default_privatization, nullptr,
- "How we should privatize global variable at runtime (no, yes, mmap, dlopen).");
-
- xbt_cfg_register_alias("smpi/privatization", "smpi/privatize-global-variables");
- xbt_cfg_register_alias("smpi/privatization", "smpi/privatize_global_variables");
-
- xbt_cfg_register_boolean("smpi/grow-injected-times", "yes", nullptr, "Whether we want to make the injected time in MPI_Iprobe and MPI_Test grow, to allow faster simulation. This can make simulation less precise, though.");
-
-#if HAVE_PAPI
- xbt_cfg_register_string("smpi/papi-events", nullptr, nullptr, "This switch enables tracking the specified counters with PAPI");