Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
adapt smpi tuto to use pajengr (+ dockerfile)
[simgrid.git] / docs / source / platform_reference.rst
index a4bbc57..70496ce 100644 (file)
@@ -10,6 +10,8 @@
    <br/>
    <br/>
 
+.. _platform_reference:
+   
 DTD Reference
 *************
 
@@ -18,6 +20,38 @@ the `simgrid.dtd <https://simgrid.org/simgrid.dtd>`_
 DTD file. The same DTD is used for both the platform and deployment
 files. 
 
+.. _pf_tag_config:
+
+------------------------------------------------------------------
+<config>
+------------------------------------------------------------------
+
+Adding configuration flags into the platform file is particularly
+useful when the described platform is best used with specific
+flags. For example, you could finely tune SMPI in your platform file
+directly.  Almost all :ref:`command-line configuration items <options_list>`
+can be configured this way.
+
+**Parent tags:** :ref:`pf_tag_platform` (must appear before any other tags) |br|
+**Children tags:** :ref:`pf_tag_prop` |br|
+**Attributes:** none
+
+.. code-block:: xml
+
+   <?xml version='1.0'?>
+   <!DOCTYPE platform SYSTEM "https://simgrid.org/simgrid.dtd">
+   <platform version="4.1">
+   <config>
+       <prop id="maxmin/precision" value="0.000010" />
+       <prop id="cpu/optim" value="TI" />
+       <prop id="network/model" value="SMPI" />
+       <prop id="smpi/bw-factor" value="65472:0.940694;15424:0.697866;9376:0.58729" />
+   </config>
+
+   <!-- The rest of your platform -->
+   </platform>
+
+
 .. _pf_tag_host:
 
 ------------------------------------------------------------------
@@ -159,7 +193,7 @@ Network links can represent one-hop network connections. See :cpp:class:`simgrid
 
       4.0 40000000
       8.0 60000000
-      PERIODICITY 12.0
+      LOOPAFTER 12.0
 
    - At time t=4, the bandwidth is of 40 MBps.
    - At time t=8, it raises to 60MBps.
@@ -233,8 +267,26 @@ and a download link.
 :``state_file``: File containing the state profile.
    See the full description in :ref:`pf_tag_host`
 
+.. _pf_tag_platform:
 
-   
+------------------------------------------------------------------
+<platform>
+------------------------------------------------------------------
+
+**Parent tags:** none (this is the root tag of every file) |br|
+**Children tags:** :ref:`pf_tag_config` (must come first),
+:ref:`pf_tag_cluster`, :ref:`pf_tag_cabinet`, :ref:`pf_tag_peer`,
+:ref:`pf_tag_zone`, :ref:`pf_tag_trace`, :ref:`pf_tag_trace_connect` |br|
+**Attributes:** 
+
+:``version``: Version of the DTD, describing the whole XML format.
+             This versionning allow future evolutions, even if we
+             avoid backward-incompatible changes. The current version
+             is **4.1**. The ``simgrid_update_xml`` program can
+             upgrade most of the past platform files to the recent
+             formalism.
+
+             
 .. _pf_tag_prop:
 
 ------------------------------------------------------------------
@@ -248,7 +300,13 @@ the plugins.
 
 From your code, you can interact with these properties using the
 following functions:
+
+- Actor: :cpp:func:`simgrid::s4u::Actor::get_property` or :cpp:func:`MSG_process_get_property_value`
+- Cluster: this is a zone, see below.
 - Host: :cpp:func:`simgrid::s4u::Host::get_property` or :cpp:func:`MSG_host_get_property_value`
+- Link: :cpp:func:`simgrid::s4u::Link::get_property`
+- Storage: :cpp:func:`simgrid::s4u::Storage::get_property` or :cpp:func:`MSG_storage_get_property_value`
+- Zone: :cpp:func:`simgrid::s4u::Zone::get_property` of :cpp:func:`MSG_zone_get_property_value`
 
 **Parent tags:** :ref:`pf_tag_actor`, :ref:`pf_tag_config`, :ref:`pf_tag_cluster`, :ref:`pf_tag_host`,
 :ref:`pf_tag_link`, :ref:`pf_tag_storage`, :ref:`pf_tag_zone` |br|