The analytical models handle a lot of floating point values. It is
possible to change the epsilon used to update and compare them through
-the \b maxmin/precision item (default value: 1e-9). Changing it
+the \b maxmin/precision item (default value: 0.00001). Changing it
may speedup the simulation by discarding very small actions, at the
price of a reduced numerical precision.
is still under investigation as of writting, and the default value is
to wait 0 seconds between emissions (no gap applied).
+\subsubsection options_model_network_asyncsend Simulating asyncronous send
+
+(this configuration item is experimental and may change or disapear)
+
+It is possible to specify that messages below a certain size 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
+\b smpi/async_small_thres item. The default value is 0. This behavior can also be
+manually set for MSG mailboxes, by setting the receiving mode of the mailbox
+with a call to \ref MSG_mailbox_set_async . For MSG, all messages sent to this
+mailbox will have this behavior, so consider using two mailboxes if needed.
+
\subsubsection options_pls Configuring packet-level pseudo-models
When using the packet-level pseudo-models, several specific
auto-detection fails for you). They are sorted here from the slowest
to the most effient:
- \b thread: very slow factory using full featured threads (either
- ptheads or windows native threads)
+ pthreads or windows native threads)
- \b ucontext: fast factory using System V contexts (or a portability
layer of our own on top of Windows fibers)
- \b raw: amazingly fast factory using a context switching mecanism
of our own, directly implemented in assembly (only available for x86
and amd64 platforms for now)
-The only reason to change this setting is when the debuging tools get
+The only reason to change this setting is when the debugging tools get
fooled by the optimized context factories. Threads are the most
debugging-friendly contextes.
\subsection options_virt_stacksize Adapting the used stack size
-(this only works if you use ucontexts or raw context factories)
-
Each virtualized used process is executed using a specific system
stack. The size of this stack has a huge impact on the simulation
scalability, but its default value is rather large. This is because
If you want to push the scalability limits of your code, you really
want to reduce the \b contexts/stack_size item. Its default value
is 128 (in Kib), while our Chord simulation works with stacks as small
-as 16 Kib, for example.
+as 16 Kib, for example. For the thread factory, the default value
+is the one of the system, if it is too large/small, it has to be set
+with this parameter.
\subsection options_virt_parallel Running user code in parallel
simulation with --cfg=tracing:1 and --cfg=tracing/smpi:1. Check the
smpirun's <i>-help</i> parameter for additional tracing options.
+Sometimes you might want to put additional information on the trace to
+correctly identify them later, or to provide data that can be used to
+reproduce an experiment. You have two ways to do that:
+
+- Add a string on top of the trace file as comment:
+\verbatim
+--cfg=tracing/comment:my_simulation_identifier
+\endverbatim
+
+- Add the contents of a textual file on top of the trace file as comment:
+\verbatim
+--cfg=tracing/comment_file:my_file_with_additional_information.txt
+\endverbatim
+
+Please, use these two parameters (for comments) to make reproducible
+simulations. For additional details about this and all tracing
+options, check See the \ref tracing_tracing_options "Tracing
+Configuration Options subsection".
+
\section options_smpi Configuring SMPI
The SMPI interface provides several specific configuration items.
amount of processes becomes really big). This behavior is disabled
when \b verbose-exit is set to 0 (it is to 1 by default).
+
+\section options_log Logging Configuration
+
+It can be done by using XBT. Go to \ref XBT_log for more details.
+
+
\section options_index Index of all existing configuration items
- \c contexts/factory: \ref options_virt_factory
- \c smpi/running_power: \ref options_smpi_bench
- \c smpi/display_timing: \ref options_smpi_timing
- \c smpi/cpu_threshold: \ref options_smpi_bench
+- \c smpi/async_small_thres: \ref options_model_network_asyncsend
- \c path: \ref options_generic_path
- \c verbose-exit: \ref options_generic_exit