X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9743125a19f37e432ea09bedd4667b9bebd2e46f..cf8f96bba46e681c5b823ced6c4cb2e857c39899:/docs/source/Tutorial_Algorithms.rst diff --git a/docs/source/Tutorial_Algorithms.rst b/docs/source/Tutorial_Algorithms.rst index 622aeb1c17..bff4f27cc5 100644 --- a/docs/source/Tutorial_Algorithms.rst +++ b/docs/source/Tutorial_Algorithms.rst @@ -345,6 +345,14 @@ Debian and Ubuntu for example, you can get them as follows: sudo apt install simgrid pajeng cmake g++ vite +For R analysis of the produced traces, you may want to install R, +and the `pajengr`_ package. + +.. code-block:: shell + + sudo apt install r-base r-cran-devtools cmake flex bison + Rscript -e "library(devtools); install_github('schnorr/pajengr');" + An initial version of the source code is provided on framagit. This template compiles with cmake. If SimGrid is correctly installed, you should be able to clone the `repository @@ -353,10 +361,12 @@ everything as follows: .. code-block:: shell - git clone git@framagit.org:simgrid/simgrid-template-s4u.git + # (exporting SimGrid_PATH is only needed if SimGrid is installed in a non-standard path) + export SimGrid_PATH=/where/to/simgrid + + git clone https://framagit.org/simgrid/simgrid-template-s4u.git cd simgrid-template-s4u/ - SimGrid_PATH=/where/to/simgrid cmake . - # (SimGrid_PATH is only needed if SimGrid is installed in a non-standard path) + cmake . make If you struggle with the compilation, then you should double check @@ -406,8 +416,7 @@ and use it as follows: .. code-block:: shell ./master-workers small_platform.xml master-workers_d.xml --cfg=tracing:yes --cfg=tracing/msg/process:yes - pj_dump --ignore-incomplete-links simgrid.trace | grep STATE > gantt.csv - Rscript draw_gantt.R gantt.csv + Rscript draw_gantt.R simgrid.trace It produces a ``Rplots.pdf`` with the following content: @@ -452,7 +461,7 @@ messages to all workers based on their number, for example as follows: for (int i = 0; i < tasks_count; i++) { std::string worker_rank = std::to_string(i % workers_count); std::string mailbox_name = std::string("worker-") + worker_rank; - simgrid::s4u::MailboxPtr mailbox = simgrid::s4u::Mailbox::by_name(mailbox_name); + simgrid::s4u::Mailbox* mailbox = simgrid::s4u::Mailbox::by_name(mailbox_name); mailbox->put(...); @@ -643,7 +652,7 @@ Visualizing the result vite is not enough to understand the situation, because it does not deal with categorization. This time, you absolutely must switch to R, as explained on `this page -`_. +`_. .. todo::