From: Martin Quinson Date: Fri, 5 Mar 2021 23:30:55 +0000 (+0100) Subject: doc: add an hint on platform calibration, and various fixes X-Git-Tag: v3.27~242 X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/7ba1d2ce8f7925844653f8d9709e1bb35e662511 doc: add an hint on platform calibration, and various fixes --- diff --git a/docs/source/Configuring_SimGrid.rst b/docs/source/Configuring_SimGrid.rst index 11a0fc9962..10ab4e25ee 100644 --- a/docs/source/Configuring_SimGrid.rst +++ b/docs/source/Configuring_SimGrid.rst @@ -733,7 +733,8 @@ 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 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. +that these simcall return on the execution branch leading to the +violation. Configuring the User Code Virtualization ---------------------------------------- diff --git a/docs/source/Introduction.rst b/docs/source/Introduction.rst index da370e2f88..7eb452e816 100644 --- a/docs/source/Introduction.rst +++ b/docs/source/Introduction.rst @@ -75,9 +75,10 @@ Depending on the context, you may see some parts of this process as less important, but you should pay close attention if you want to be confident in the results coming out of your simulations. In particular, you should not blindly trust your results but always -strive to double-check them. Likewise, you should question the realism -of your input configuration, and we even encourage you to doubt (and -check) the provided performance models. +strive to double-check them. Likewise, :ref:`you should question the +realism of your input configuration `, and we even +encourage you to :ref:`doubt (and check) the provided performance models +`. To ease such questioning, you really should logically separate these parts in your experimental setup. It is seen as a very bad practice to diff --git a/docs/source/platform_howtos.rst b/docs/source/platform_howtos.rst index a191b0a800..6b450dcc1e 100644 --- a/docs/source/platform_howtos.rst +++ b/docs/source/platform_howtos.rst @@ -56,6 +56,49 @@ Unsupported claims, (6) Toy duck approach, and (7) The tunnel view. As you can see, this article is a must read. It's a pity that it's not freely available, though. +.. _howto_calibration: + +Getting realistic results +************************* + +The simulation models in SimGrid have been developed with care and the +object of thorough validation/invalidation campaigns. These models +come with parameters that configure their behaviors. The values of +these parameters are set based on the :ref:`XML platform description +file ` and on parameters passed via :ref:`--cfg=Item:Value +command-line arguments `. A simulator may also include any +number of custom model parameters that are used to instantiate +particular simulated activities (e.g., a simulator developed with the +S4U API typically defines volumes of computation, communication, and +time to pass to methods such as :cpp:func:`execute() +`, :cpp:func:`put() +`, or :cpp:func:`sleep_for() +`). Regardless of the potential +accuracy of the simulation models, if they are instantiated with +unrealistic parameter values, then the simulation will be inaccurate. +The provided default values may or may not be appropriate for +simulating a particular system. + +Given the above, an integral and crucial part of simulation-driven +research is **simulation calibration**: the process by which one picks +simulation parameter values based on observed real-world executions so +that simulated executions have high accuracy. We then say that a +simulator is "calibrated". Once a simulator is calibrated for a +real-world system, it can be used to simulate that system accurately. +But it can also be used to simulate different but structurally +similar systems (e.g., different scales, different basic hardware +characteristics, different application workloads) with high confidence. + +Research conclusions derived from simulation results obtained with an +uncalibrated simulator are questionable in terms of their relevance +for real-world systems. Unfortunately, because simulation calibration +is often a painstaking process, is it often not performed sufficiently +thoroughly (or at all!). We strongly urge SimGrid users to perform +simulation calibration. Here is an example of a research publication +in which the authors have calibrated their (SimGrid) simulators: +https://hal.inria.fr/hal-01523608 + + .. _howto_churn: Modeling Churn (e.g., in P2P)