Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of framagit.org:Adrien.Gougeon/simgrid into master
[simgrid.git] / docs / source / Configuring_SimGrid.rst
index e3689ec..e7a9685 100644 (file)
@@ -67,7 +67,7 @@ with :cpp:func:`simgrid::s4u::Engine::set_config` or :cpp:func:`MSG_config`.
    int main(int argc, char *argv[]) {
      simgrid::s4u::Engine e(&argc, argv);
 
-     e.set_config("Item:Value");
+     simgrid::s4u::Engine::set_config("Item:Value");
 
      // Rest of your code
    }
@@ -413,9 +413,9 @@ Simulating Asynchronous Send
 
 (this configuration item is experimental and may change or disappear)
 
-It is possible to specify that messages below a certain size will be
+It is possible to specify that messages below a certain size (in bytes) will be
 sent as soon as the call to MPI_Send is issued, without waiting for
-the correspondant receive. This threshold can be configured through
+the correspondent receive. This threshold can be configured through
 the ``smpi/async-small-thresh`` item. The default value is 0. This
 behavior can also be manually set for mailboxes, by setting the
 receiving mode of the mailbox with a call to
@@ -444,7 +444,7 @@ Configuring the Storage model
 
 .. _cfg=storage/max_file_descriptors:
 
-File Descriptor Cound per Host
+File Descriptor Count per Host
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 **Option** ``storage/max_file_descriptors`` **Default:** 1024
@@ -515,10 +515,10 @@ In SMPI, this depends on the message size, that is compared against two threshol
 - if (:ref:`smpi/send-is-detached-thresh <cfg=smpi/send-is-detached-thresh>` < size) then
   MPI_Send returns only when the message has actually been sent over the network. This is known as the rendez-vous mode.
 
-The ``smpi/buffering`` option gives an easier interface to choose between these semantics. It can take two values:
+The ``smpi/buffering`` (only valid with MC) option gives an easier interface to choose between these semantics. It can take two values:
 
-- **zero:** means that buffering should be disabled. Blocking communications are actually blocking.
-- **infty:** means that buffering should be made infinite. Blocking communications are non-blocking.
+- **zero:** means that buffering should be disabled. All communications are actually blocking.
+- **infty:** means that buffering should be made infinite. All communications are non-blocking.
 
 .. _cfg=model-check/property:
 
@@ -530,7 +530,7 @@ Specifying a liveness property
 If you want to specify liveness properties, you have to pass them on
 the command line, specifying the name of the file containing the
 property, as formatted by the `ltl2ba <https://github.com/utwente-fmt/ltl2ba>`_ program.
-Note that ltl2ba is not part of SimGrid and must be installed separatly.
+Note that ltl2ba is not part of SimGrid and must be installed separately.
 
 .. code-block:: shell
 
@@ -719,7 +719,7 @@ MC-related options, keep non-MC-related ones and add
 Currently, if the path is of the form ``X;Y;Z``, each number denotes
 the actor's pid that is selected at each indecision point. If it's of
 the form ``X/a;Y/b``, the X and Y are the selected pids while the a
-and b are the return values of their simcalls. In the previouse
+and b are the return values of their simcalls. In the previous
 example, ``1/3;1/4``, you can see from the full output that the actor
 1 is doing MC_RANDOM simcalls, so the 3 and 4 simply denote the values
 that these simcall return.
@@ -963,10 +963,16 @@ a ``MPI_Send()``, SMPI will automatically benchmark the duration of
 this code, and create an execution task within the simulator to take
 this into account. For that, the actual duration is measured on the
 host machine and then scaled to the power of the corresponding
-simulated machine. The variable ``smpi/host-speed`` allows one to specify
-the computational speed of the host machine (in flop/s) to use when
-scaling the execution times. It defaults to 20000, but you really want
-to adjust it to get accurate simulation results.
+simulated machine. The variable ``smpi/host-speed`` allows one to
+specify the computational speed of the host machine (in flop/s by
+default) to use when scaling the execution times.
+
+The default value is ``smpi/host-speed=20kf`` (= 20,000 flop/s). This
+is probably underestimated for most machines, leading SimGrid to
+overestimate the amount of flops in the execution blocks that are
+automatically injected in the simulator. As a result, the execution
+time of the whole application will probably be overestimated until you
+use a realistic value.
 
 When the code consists of numerous consecutive MPI calls, the
 previous mechanism feeds the simulation kernel with numerous tiny
@@ -1052,7 +1058,7 @@ The possible throughput of network links is often dependent on the
 message sizes, as protocols may adapt to different message sizes. With
 this option, a series of message sizes and factors are given, helping
 the simulation to be more realistic. For instance, the current default
-value means that messages with size 65472 and more will get a total of
+value means that messages with size 65472 bytes and more will get a total of
 MAX_BANDWIDTH*0.940694, messages of size 15424 to 65471 will get
 MAX_BANDWIDTH*0.697866, and so on (where MAX_BANDWIDTH denotes the
 bandwidth of the link).
@@ -1291,7 +1297,7 @@ values, for example ``1:3:2;10:5:1``.  The sections are divided by ";"
 so this example contains two sections.  Furthermore, each section
 consists of three values.
 
-1. The first value denotes the minimum size for this section to take effect;
+1. The first value denotes the minimum size in bytes for this section to take effect;
    read it as "if message size is greater than this value (and other section has a larger
    first value that is also smaller than the message size), use this".
    In the first section above, this value is "1".
@@ -1384,7 +1390,7 @@ for each shared block.
 With the ``global`` algorithm, each call to SMPI_SHARED_MALLOC()
 returns a new address, but it only points to a shadow block: its memory
 area is mapped on a 1 MiB file on disk. If the returned block is of size
-N MiB, then the same file is mapped N times to cover the whole bloc.
+N MiB, then the same file is mapped N times to cover the whole block.
 At the end, no matter how many times you call SMPI_SHARED_MALLOC, this will
 only consume 1 MiB in memory.