Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
docs: prefer svg to png, and inclusion to copy/paste
[simgrid.git] / docs / source / tuto_smpi.rst
index 082bbb1..18b5d9a 100644 (file)
@@ -37,7 +37,7 @@ only plan to debug your application in a reproducible setup, without
 any performance-related analysis.
 
 How does it work?
 any performance-related analysis.
 
 How does it work?
------------------
+^^^^^^^^^^^^^^^^^
 
 In SMPI, communications are simulated while computations are
 emulated. This means that while computations occur as they would in
 
 In SMPI, communications are simulated while computations are
 emulated. This means that while computations occur as they would in
@@ -61,7 +61,53 @@ to predict the time taken by each communications. Any computations
 occuring between two MPI calls are benchmarked, and the corresponding
 time is reported into the simulator.
 
 occuring between two MPI calls are benchmarked, and the corresponding
 time is reported into the simulator.
 
+.. image:: /tuto_smpi/img/big-picture.svg
+   :align: center         
+
 Describing Your Platform
 Describing Your Platform
-========================
+------------------------
+
+As a SMPI user, you are supposed to provide a description of your
+virtual platform, that is mostly a set of simulated hosts and network
+links with some performance characteristics. SimGrid provides a plenty
+of :ref:`documentation <platform>`_ and examples (in the
+`examples/platforms <https://framagit.org/simgrid/simgrid/tree/master/examples/platforms>`_
+source directory), and this section only shows a small set of introductory
+examples.
+
+Simple Example with 3 hosts
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+At the most basic level, you can describe your simulated platform as a
+graph of hosts and network links. For instance:
+
+.. image:: /tuto_smpi/img/3hosts.png
+   :align: center
+
+.. literalinclude:: /tuto_smpi/3hosts.xml
+   :language: xml
+
+Note the way in which hosts, links, and routes are defined in
+this XML. All hosts are defined with a speed (in Gflops), and links
+with a latency (in us) and bandwidth (in MBytes per second). Other
+units are possible and written as expected. Routes specify the list of
+links encountered from one route to another. Routes are symmetrical by
+default.
+
+Cluster with a Crossbar
+^^^^^^^^^^^^^^^^^^^^^^^
+
+A very common parallel computing platform is a homogeneous cluster in
+which hosts are interconnected via a crossbar switch with as many
+ports as hosts, so that any disjoint pairs of hosts can communicate
+concurrently at full speed. For instance:
+
+Cluster with a Shared Backbone
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 
+Another popular model for a parallel platform is that of a set of
+homogeneous hosts connected to a shared communication medium, a
+backbone, with some finite bandwidth capacity and on which
+communicating host pairs can experience contention. For instance:
+       
 ..  LocalWords:  SimGrid
 ..  LocalWords:  SimGrid