X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/887a358843507b67e71b83c62fa3686089263653..a6e4771564d3d041955f630ce71e6123a911ce78:/docs/source/tuto_smpi.rst diff --git a/docs/source/tuto_smpi.rst b/docs/source/tuto_smpi.rst index 082bbb109b..18b5d9adb7 100644 --- a/docs/source/tuto_smpi.rst +++ b/docs/source/tuto_smpi.rst @@ -37,7 +37,7 @@ only plan to debug your application in a reproducible setup, without 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 @@ -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. +.. image:: /tuto_smpi/img/big-picture.svg + :align: center + 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 `_ and examples (in the +`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