From 4b5549027452eff0826b98c76b3361b520e17eba Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Wed, 12 Sep 2018 01:17:36 +0200 Subject: [PATCH] tuto smpi: add a picture explaining how it works --- docs/source/tuto_smpi.rst | 7 +- docs/source/tuto_smpi/img/big-picture.png | Bin 0 -> 41184 bytes docs/source/tuto_smpi/img/big-picture.svg | 774 ++++++++++++++++++++++ 3 files changed, 780 insertions(+), 1 deletion(-) create mode 100644 docs/source/tuto_smpi/img/big-picture.png create mode 100644 docs/source/tuto_smpi/img/big-picture.svg diff --git a/docs/source/tuto_smpi.rst b/docs/source/tuto_smpi.rst index 082bbb109b..f7f2476d6d 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,12 @@ 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.png + :align: center + + Describing Your Platform ======================== + .. LocalWords: SimGrid diff --git a/docs/source/tuto_smpi/img/big-picture.png b/docs/source/tuto_smpi/img/big-picture.png new file mode 100644 index 0000000000000000000000000000000000000000..d51189a1284d5140ac9e86f655ec92e240a716e0 GIT binary patch literal 41184 zcmXtA1yoeu*L^cIh%`u-Gy>8MA~|%oj3C`0(lFEy6+w`YP*O@l8tDN9lvG-}kw#kb zyZqPsSj&Qm_wGIS?0xp$<0~C46+(O(d01b@NYa1Ra0*W!uPoS1+&lkN&vn|{anf9xxTyIbKj?4wvex{FQ22Ev$xGt z4_iKWFZ+yLX&MM(g47fr8TftJ{^)C=KXK6`#}Od|f60j?!6He>St@^RX7Btycj?Tj zvToO@EHDQiXBO&HQ|>ft?(Di%UTvgA9{w8sn%1)tkM)O4o1B*3V_aed`O%AzmV@va z&)pvb1O9_TgNM+6p2X-q?94u!d&aQRpxKWLi;Ii8tbVifoDn}Dr({nJZ^#}djpIQh zKZ4jDnSMio;(~bl#0MGBHxM2CXKj^KS7)cbOz|N68!4Iv;>)L7hA-Sh1w!F4X>1QV zTLOB9*{_fZF1spXnH|LlJAxK0et%qATrAFf$?d^ccs_jx9SB*YvAtX^AYs@Du{A{Q zv{MiNNu!Z!3EPLGs8LYt;fUdMb

Arl6g3QB?oOU?yI(R7bx4Md_bH^*)!2*OBP+bJ! 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

3TG4}$x^A6f%FuL5Me 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 + + +image/svg+xml + +host 2 +host 3 +host 0 +host 1 +Network +rank 2 +rank 3 +rank 0 +rank 1 +single UNIX process +Simulated Network +rank 0 +rank 1 +rank 2 +rank 3 +Real Settings +SimGrid Simulation + \ No newline at end of file -- 2.20.1