Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[DOC] Update documentation on smpi/privatize-global-variables
[simgrid.git] / doc / doxygen / options.doc
index b64faef..461b360 100644 (file)
@@ -117,11 +117,10 @@ described in
     lmm_solve (experts only; check the code for more info).
 
 If you compiled SimGrid accordingly, you can use packet-level network
-simulators as network models (see \ref pls). In that case, you have
+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".
-  - \b NS3: Network pseudo-model using the NS3 tcp model instead of an
-    analytic model
+  - \b NS3: Network pseudo-model using the NS3 tcp model
 
 Concerning the CPU, we have only one model for now:
   - \b Cas01: Simplistic CPU model (time=size/power)
@@ -636,7 +635,7 @@ which value is either:
 
 \section options_tracing Configuring the tracing subsystem
 
-The \ref tracing "tracing subsystem" can be configured in several
+The \ref outcomes_vizu "tracing subsystem" can be configured in several
 different ways depending on the nature of the simulator (MSG, SimDag,
 SMPI) and the kind of traces that need to be obtained. See the \ref
 tracing_tracing_options "Tracing Configuration Options subsection" to
@@ -762,6 +761,33 @@ computation.
     you should check the SMPI_SAMPLE macros, documented in the chapter
     \ref SMPI_adapting_speed.
 
+\subsection options_model_smpi_adj_file smpi/comp-adjustment-file: Slow-down or speed-up parts of your code.
+
+This option allows you to pass a file that contains two columns: The first column
+defines the section that will be subject to a speedup; the second column is the speedup.
+
+For instance:
+
+\verbatim
+"start:stop","ratio"
+"exchange_1.f:30:exchange_1.f:130",1.18244559422142
+\endverbatim
+
+The first line is the header - you must include it.
+The following line means that the code between two consecutive MPI calls on
+line 30 in exchange_1.f and line 130 in exchange_1.f should receive a speedup
+of 1.18244559422142. The value for the second column is therefore a speedup, if it is
+larger than 1 and a slow-down if it is smaller than 1. Nothing will be changed if it is
+equal to 1.
+
+Of course, you can set any arbitrary filenames you want (so the start and end don't have to be
+in the same file), but be aware that this mechanism only supports @em consecutive calls!
+
+\note
+    Please note that you must pass the \b -trace-call-location flag to smpicc
+    or smpiff, respectively! This flag activates some macro definitions in our
+    mpi.h / mpi.f files that help with obtaining the call location.
+
 \subsection options_model_smpi_bw_factor smpi/bw-factor: Bandwidth factors
 
 The possible throughput of network links is often dependent on the
@@ -847,6 +873,9 @@ To avoid this, several options are possible :
   To use this runtime automatic switching, the variable \b smpi/privatize-global-variables
   should be set to yes
 
+\warning
+  This configuration option cannot be set in your platform file. You can only
+  pass it as an argument to smpirun.
 
 
 \subsection options_model_smpi_detached Simulating MPI detached send
@@ -855,7 +884,7 @@ This threshold specifies the size in bytes under which the send will return
 immediately. This is different from the threshold detailed in  \ref options_model_network_asyncsend
 because the message is not effectively sent when the send is posted. SMPI still waits for the
 correspondant receive to be posted to perform the communication operation. This threshold can be set
-by changing the \b smpi/send-is-detached item. The default value is 65536.
+by changing the \b smpi/send-is-detached-thresh item. The default value is 65536.
 
 \subsection options_model_smpi_collectives Simulating MPI collective algorithms
 
@@ -872,6 +901,13 @@ uses naive version of collective operations). Each collective operation can be m
 The behavior and motivation for this configuration option is identical with \a smpi/test, see
 Section \ref options_model_smpi_test for details.
 
+\subsection options_model_smpi_init smpi/init: Inject constant times for calls to MPI_Init
+
+\b Default value: 0
+
+The behavior for this configuration option is identical with \a smpi/test, see
+Section \ref options_model_smpi_test for details.
+
 \subsection options_model_smpi_ois smpi/ois: Inject constant times for asynchronous send operations
 
 This configuration option works exactly as \a smpi/os, see Section \ref options_model_smpi_os.
@@ -1118,11 +1154,13 @@ silently overflow on other parts of the memory.
 - \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/lat-factor: \ref options_model_smpi_lat_factor
 - \c smpi/IB-penalty-factors: \ref options_model_network_coefs
 - \c smpi/iprobe: \ref options_model_smpi_iprobe
+- \c smpi/init: \ref options_model_smpi_init
 - \c smpi/ois: \ref options_model_smpi_ois
 - \c smpi/or: \ref options_model_smpi_or
 - \c smpi/os: \ref options_model_smpi_os