X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d55d91ed057b45ff15d00ea7d503132f7d174bac..77bbf3027c4240a2e833209a3a3f186589da8577:/doc/doxygen/options.doc diff --git a/doc/doxygen/options.doc b/doc/doxygen/options.doc index d8966600b4..17acadde2d 100644 --- a/doc/doxygen/options.doc +++ b/doc/doxygen/options.doc @@ -42,7 +42,7 @@ file: A last solution is to pass your configuration directly using the C interface. If you happen to use the MSG interface, this is very easy -with the MSG_config() function. If you do not use MSG, that's a bit +with the simgrid::s4u::Engine::setConfig() or MSG_config() functions. If you do not use MSG, that's a bit more complex, as you have to mess with the internal configuration set directly as follows. Check the \ref XBT_config "relevant page" for details on all the functions you can use in this context, \c @@ -52,18 +52,115 @@ SimGrid. @code #include -extern xbt_cfg_t _sg_cfg_set; - int main(int argc, char *argv[]) { SD_init(&argc, argv); /* Prefer MSG_config() if you use MSG!! */ - xbt_cfg_set_parse(_sg_cfg_set,"Item:Value"); + xbt_cfg_set_parse("Item:Value"); // Rest of your code } @endcode +\section options_index Index of all existing configuration options + +\note + The full list can be retrieved by passing "--help" and + "--help-cfg" to an executable that uses SimGrid. + +- \c clean-atexit: \ref options_generic_clean_atexit + +- \c contexts/factory: \ref options_virt_factory +- \c contexts/guard-size: \ref options_virt_guard_size +- \c contexts/nthreads: \ref options_virt_parallel +- \c contexts/parallel-threshold: \ref options_virt_parallel +- \c contexts/stack-size: \ref options_virt_stacksize +- \c contexts/synchro: \ref options_virt_parallel + +- \c cpu/maxmin-selective-update: \ref options_model_optim +- \c cpu/model: \ref options_model_select +- \c cpu/optim: \ref options_model_optim + +- \c exception/cutpath: \ref options_exception_cutpath + +- \c host/model: \ref options_model_select + +- \c maxmin/precision: \ref options_model_precision +- \c maxmin/concurrency-limit: \ref options_concurrency_limit + +- \c msg/debug-multiple-use: \ref options_msg_debug_multiple_use + +- \c model-check: \ref options_modelchecking +- \c model-check/checkpoint: \ref options_modelchecking_steps +- \c model-check/communications-determinism: \ref options_modelchecking_comm_determinism +- \c model-check/dot-output: \ref options_modelchecking_dot_output +- \c model-check/hash: \ref options_modelchecking_hash +- \c model-check/property: \ref options_modelchecking_liveness +- \c model-check/max-depth: \ref options_modelchecking_max_depth +- \c model-check/record: \ref options_modelchecking_recordreplay +- \c model-check/reduction: \ref options_modelchecking_reduction +- \c model-check/replay: \ref options_modelchecking_recordreplay +- \c model-check/send-determinism: \ref options_modelchecking_comm_determinism +- \c model-check/sparse-checkpoint: \ref options_modelchecking_sparse_checkpoint +- \c model-check/termination: \ref options_modelchecking_termination +- \c model-check/timeout: \ref options_modelchecking_timeout +- \c model-check/visited: \ref options_modelchecking_visited + +- \c network/bandwidth-factor: \ref options_model_network_coefs +- \c network/crosstraffic: \ref options_model_network_crosstraffic +- \c network/latency-factor: \ref options_model_network_coefs +- \c network/maxmin-selective-update: \ref options_model_optim +- \c network/model: \ref options_model_select +- \c network/optim: \ref options_model_optim +- \c network/TCP-gamma: \ref options_model_network_gamma +- \c network/weight-S: \ref options_model_network_coefs + +- \c ns3/TcpModel: \ref options_pls +- \c path: \ref options_generic_path +- \c plugin: \ref options_generic_plugin + +- \c storage/max_file_descriptors: \ref option_model_storage_maxfd + +- \c surf/precision: \ref options_model_precision + +- \c For collective operations of SMPI, please refer to Section \ref options_index_smpi_coll +- \c smpi/async-small-thresh: \ref options_model_network_asyncsend +- \c smpi/bw-factor: \ref options_model_smpi_bw_factor +- \c smpi/coll-selector: \ref options_model_smpi_collectives +- \c smpi/comp-adjustment-file: \ref options_model_smpi_adj_file +- \c smpi/cpu-threshold: \ref options_smpi_bench +- \c smpi/display-timing: \ref options_smpi_timing +- \c smpi/grow-injected-times: \ref options_model_smpi_test +- \c smpi/host-speed: \ref options_smpi_bench +- \c smpi/IB-penalty-factors: \ref options_model_network_coefs +- \c smpi/iprobe: \ref options_model_smpi_iprobe +- \c smpi/iprobe-cpu-usage: \ref options_model_smpi_iprobe_cpu_usage +- \c smpi/init: \ref options_model_smpi_init +- \c smpi/keep-temps: \ref options_smpi_temps +- \c smpi/lat-factor: \ref options_model_smpi_lat_factor +- \c smpi/ois: \ref options_model_smpi_ois +- \c smpi/or: \ref options_model_smpi_or +- \c smpi/os: \ref options_model_smpi_os +- \c smpi/papi-events: \ref options_smpi_papi_events +- \c smpi/privatization: \ref options_smpi_privatization +- \c smpi/send-is-detached-thresh: \ref options_model_smpi_detached +- \c smpi/shared-malloc: \ref options_model_smpi_shared_malloc +- \c smpi/shared-malloc-hugepage: \ref options_model_smpi_shared_malloc +- \c smpi/simulate-computation: \ref options_smpi_bench +- \c smpi/test: \ref options_model_smpi_test +- \c smpi/wtime: \ref options_model_smpi_wtime + +- \c Tracing configuration options can be found in Section \ref tracing_tracing_options. + +- \c storage/model: \ref options_storage_model +- \c verbose-exit: \ref options_generic_exit + +- \c vm/model: \ref options_vm_model + +\subsection options_index_smpi_coll Index of SMPI collective algorithms options + +TODO: All available collective algorithms will be made available via the ``smpirun --help-coll`` command. + \section options_model Configuring the platform models \anchor options_storage_model @@ -118,8 +215,8 @@ described in If you compiled SimGrid accordingly, you can use packet-level network simulators as network models (see \ref pls_ns3). In that case, you have -two extra models, described below, and some \ref options_pls "specific -additional configuration flags". +two extra models, described below, and some +\ref options_pls "specific additional configuration flags". - \b NS3: Network pseudo-model using the NS3 tcp model Concerning the CPU, we have only one model for now: @@ -219,7 +316,7 @@ setting on regular (less constrained) scenarios so it is off by default. \subsubsection options_model_network_gamma Maximal TCP window size The analytical models need to know the maximal TCP window size to take -the TCP congestion mechanism into account. This is set to 20000 by +the TCP congestion mechanism into account. This is set to 4194304 by default, but can be changed using the \b network/TCP-gamma item. On linux, this value can be retrieved using the following @@ -275,15 +372,6 @@ can be set to 0 (disable this feature) or 1 (enable it). Note that with the default host model this option is activated by default. -\subsubsection options_model_network_sendergap Simulating sender gap - -(this configuration item is experimental and may change or disapear) - -It is possible to specify a timing gap between consecutive emission on -the same network card through the \b network/sender-gap item. This -is still under investigation as of writting, and the default value is -to wait 10 microseconds (1e-5 seconds) between emissions. - \subsubsection options_model_network_asyncsend Simulating asyncronous send (this configuration item is experimental and may change or disapear) @@ -387,13 +475,15 @@ For now, this configuration variable can take 2 values: \subsection options_modelchecking_visited model-check/visited, Cycle detection In order to detect cycles, the model-checker needs to check if a new explored -state is in fact the same state than a previous one. In order to do this, +state is in fact the same state than a previous one. For that, the model-checker can take a snapshot of each visited state: this snapshot is then used to compare it with subsequent states in the exploration graph. -The \b model-check/visited is the maximum number of states which are stored in -memory. If the maximum number of snapshotted state is reached some states will -be removed from the memory and some cycles might be missed. +The \b model-check/visited option is the maximum number of states which are stored in +memory. If the maximum number of snapshotted state is reached, some states will +be removed from the memory and some cycles might be missed. Small +values can lead to incorrect verifications, but large value can +exhaust your memory, so choose carefully. By default, no state is snapshotted and cycles cannot be detected. @@ -415,7 +505,7 @@ liveness violation) as well as the cycle for liveness properties. This dot file can then fed to the graphviz dot tool to generate an corresponding graphical representation. -\subsection options_modelchecking_max_depth model-check/max_depth, Depth limit +\subsection options_modelchecking_max_depth model-check/max-depth, Depth limit The \b model-checker/max-depth can set the maximum depth of the exploration graph of the model-checker. If this limit is reached, a logging message is @@ -1182,10 +1272,10 @@ is registered and will clean up some variables and terminate/cleanup the tracing TODO: Add when this should be used. -\subsection options_generic_path XML file inclusion path +\subsection options_generic_path Profile files' search path It is possible to specify a list of directories to search into for the -\ tag in XML files by using the \b path configuration +trace files (see @ref pf_trace) by using the \b path configuration item. To add several directory to the path, set the configuration item several times, as in \verbatim --cfg=path:toto --cfg=path:tutu @@ -1202,7 +1292,7 @@ when \b verbose-exit is set to 0 (it is to 1 by default). \subsection options_exception_cutpath Truncate local path from exception backtrace \verbatim ---cfg=exceptions/cutpath:1 +--cfg=exception/cutpath:1 \endverbatim This configuration option is used to remove the path from the @@ -1216,104 +1306,4 @@ hence, the output would mismatch, causing the test to fail. It can be done by using XBT. Go to \ref XBT_log for more details. -\section options_index Index of all existing configuration options - -\note - The full list can be retrieved by passing "--help" and - "--help-cfg" to an executable that uses SimGrid. - -- \c clean-atexit: \ref options_generic_clean_atexit - -- \c contexts/factory: \ref options_virt_factory -- \c contexts/guard-size: \ref options_virt_guard_size -- \c contexts/nthreads: \ref options_virt_parallel -- \c contexts/parallel_threshold: \ref options_virt_parallel -- \c contexts/stack-size: \ref options_virt_stacksize -- \c contexts/synchro: \ref options_virt_parallel - -- \c cpu/maxmin-selective-update: \ref options_model_optim -- \c cpu/model: \ref options_model_select -- \c cpu/optim: \ref options_model_optim - -- \c exception/cutpath: \ref options_exception_cutpath - -- \c host/model: \ref options_model_select - -- \c maxmin/precision: \ref options_model_precision -- \c maxmin/concurrency-limit: \ref options_concurrency_limit - -- \c msg/debug-multiple-use: \ref options_msg_debug_multiple_use - -- \c model-check: \ref options_modelchecking -- \c model-check/checkpoint: \ref options_modelchecking_steps -- \c model-check/communications-determinism: \ref options_modelchecking_comm_determinism -- \c model-check/dot-output: \ref options_modelchecking_dot_output -- \c model-check/hash: \ref options_modelchecking_hash -- \c model-check/property: \ref options_modelchecking_liveness -- \c model-check/max-depth: \ref options_modelchecking_max_depth -- \c model-check/record: \ref options_modelchecking_recordreplay -- \c model-check/reduction: \ref options_modelchecking_reduction -- \c model-check/replay: \ref options_modelchecking_recordreplay -- \c model-check/send-determinism: \ref options_modelchecking_comm_determinism -- \c model-check/sparse-checkpoint: \ref options_modelchecking_sparse_checkpoint -- \c model-check/termination: \ref options_modelchecking_termination -- \c model-check/timeout: \ref options_modelchecking_timeout -- \c model-check/visited: \ref options_modelchecking_visited - -- \c network/bandwidth-factor: \ref options_model_network_coefs -- \c network/crosstraffic: \ref options_model_network_crosstraffic -- \c network/latency-factor: \ref options_model_network_coefs -- \c network/maxmin-selective-update: \ref options_model_optim -- \c network/model: \ref options_model_select -- \c network/optim: \ref options_model_optim -- \c network/sender_gap: \ref options_model_network_sendergap -- \c network/TCP-gamma: \ref options_model_network_gamma -- \c network/weight-S: \ref options_model_network_coefs - -- \c ns3/TcpModel: \ref options_pls -- \c path: \ref options_generic_path -- \c plugin: \ref options_generic_plugin - -- \c storage/max_file_descriptors: \ref option_model_storage_maxfd - -- \c surf/precision: \ref options_model_precision - -- \c For collective operations of SMPI, please refer to Section \ref options_index_smpi_coll -- \c smpi/async-small-thresh: \ref options_model_network_asyncsend -- \c smpi/bw-factor: \ref options_model_smpi_bw_factor -- \c smpi/coll-selector: \ref options_model_smpi_collectives -- \c smpi/comp-adjustment-file: \ref options_model_smpi_adj_file -- \c smpi/cpu-threshold: \ref options_smpi_bench -- \c smpi/display-timing: \ref options_smpi_timing -- \c smpi/grow-injected-times: \ref options_model_smpi_test -- \c smpi/host-speed: \ref options_smpi_bench -- \c smpi/IB-penalty-factors: \ref options_model_network_coefs -- \c smpi/iprobe: \ref options_model_smpi_iprobe -- \c smpi/iprobe-cpu-usage: \ref options_model_smpi_iprobe_cpu_usage -- \c smpi/init: \ref options_model_smpi_init -- \c smpi/keep-temps: \ref options_smpi_temps -- \c smpi/lat-factor: \ref options_model_smpi_lat_factor -- \c smpi/ois: \ref options_model_smpi_ois -- \c smpi/or: \ref options_model_smpi_or -- \c smpi/os: \ref options_model_smpi_os -- \c smpi/papi-events: \ref options_smpi_papi_events -- \c smpi/privatization: \ref options_smpi_privatization -- \c smpi/send-is-detached-thresh: \ref options_model_smpi_detached -- \c smpi/shared-malloc: \ref options_model_smpi_shared_malloc -- \c smpi/shared-malloc-hugepage: \ref options_model_smpi_shared_malloc -- \c smpi/simulate-computation: \ref options_smpi_bench -- \c smpi/test: \ref options_model_smpi_test -- \c smpi/wtime: \ref options_model_smpi_wtime - -- \c Tracing configuration options can be found in Section \ref tracing_tracing_options. - -- \c storage/model: \ref options_storage_model -- \c verbose-exit: \ref options_generic_exit - -- \c vm/model: \ref options_vm_model - -\subsection options_index_smpi_coll Index of SMPI collective algorithms options - -TODO: All available collective algorithms will be made available via the ``smpirun --help-coll`` command. - */