Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
install the tools from the packages when possible; forget about Paje
[simgrid.git] / doc / doxygen / tutorial.doc
index 7b8347e..97e9a0f 100644 (file)
@@ -1,14 +1,13 @@
 /*! @page tutorial SimGrid First Tutorial
 
+SimGrid is a toolkit providing the core functionalities for the
+simulation of distributed applications in heterogeneous distributed
+environments.
 
-[SimGrid](http://simgrid.gforge.inria.fr/) is a toolkit
-that provides core functionalities for the simulation of distributed
-applications in heterogeneous distributed environments.
-
-The specific goal of the project is to facilitate research in the area of
-distributed and parallel application scheduling on distributed computing
-platforms ranging from simple network of workstations to Computational
-Grids.
+The project goal is both to facilitate research and to help improving
+real applications in the area of distributed and parallel systems,
+ranging from simple network of workstations to Computational Grids to
+Clouds and to supercomputers.
 
 \tableofcontents
 
@@ -79,7 +78,7 @@ interesting questions:
 - Although an algorithm may be more efficient than another, how
   does it interfere with other applications?
 
-    %As you can see, this very simple setting may need to evolve way
+    As you can see, this very simple setting may need to evolve way
     beyond what you initially imagined.
 
     <blockquote> Premature optimization is  the root of all evil. -- D.E.Knuth</blockquote>
@@ -109,44 +108,21 @@ provided by the [online documentation][fn:4] and by several tutorials:
 - http://simgrid.gforge.inria.fr/tutorials/simgrid-tracing-101.pdf
 - http://simgrid.gforge.inria.fr/tutorials/simgrid-platf-101.pdf
 
-\section intro_recommendation Recommended Steps
-
-## Installing Viva
-
-This [software][fn:1] will be useful to make fancy graph or treemap
-visualizations and get a better understanding of simulations. You
-will first need to install pajeng:
-
-~~~~{.sh}
-sudo apt-get install git cmake build-essential libqt4-dev  libboost-dev freeglut3-dev ;
-git clone https://github.com/schnorr/pajeng.git
-cd pajeng && mkdir -p build &&  cd build && cmake ../ -DCMAKE_INSTALL_PREFIX=$HOME &&  make -j install
-cd ../../
-~~~~
-
-Then you can install viva.
+## Installing the visualization softwares
 
-~~~~{.sh}
-sudo apt-get install libboost-dev libconfig++-dev libconfig8-dev libgtk2.0-dev freeglut3-dev
-git clone https://github.com/schnorr/viva.git
-cd viva && mkdir -p build_graph &&  cd build_graph && cmake ../ -DTUPI_LIBRARY=ON -DVIVA=ON -DCMAKE_INSTALL_PREFIX=$HOME &&  make -j install
-cd ../../
-~~~~
-
-## Installing Paje
-
-This [software][fn:5] provides a Gantt-chart visualization.
-
-~~~~{.sh}
-sudo apt-get install paje.app
-~~~~
+Several tools can be used to visualize the result of SimGrid
+simulations and get a better understanding of simulations.
 
-## Installing Vite
+- [viva][fn:1] will be useful to make fancy graph or treemap visualizations.
+- [pajeng][fn:5] provides a Gantt-chart visualization.
+- [Vite][fn:6] also provides a Gantt-chart visualization.
 
-This software provides a [Gantt-chart visualization][fn:6].
+Under Debian or Ubuntu, this is really easy with apt-get, while you
+may have to install from the source on other systems. Check the
+documentation of each software for more details.
 
 ~~~~{.sh}
-sudo apt-get install vite
+sudo apt-get install viva pajeng vite
 ~~~~
 
 \section intro_start Let's get started
@@ -157,7 +133,7 @@ sudo apt-get install vite
 The corresponding archive with all source files can be obtained
 [here](http://simgrid.gforge.inria.fr/tutorials/msg-tuto/msg-tuto.tgz),
 while the simgrid archive contains
-[several platform files](https://github.com/mquinson/simgrid/tree/master/examples/platforms)
+[several platform files](https://github.com/simgrid/simgrid/tree/master/examples/platforms)
 (click on the "Raw" button of files you want to download from GitHub).
 
 ~~~~{.sh}
@@ -166,7 +142,7 @@ cd msg-tuto/src
 make
 ~~~~
 
-%As you can see, there is already a nice Makefile that compiles
+As you can see, there is already a nice Makefile that compiles
 everything for you. Now the tiny example has been compiled and it
 can be easily run as follows:
 
@@ -202,7 +178,7 @@ For a more classical Gantt-Chart visualization, you can produce a
 ~~~~{.sh}
 ./masterworker0 platforms/platform.xml deployment0.xml --cfg=tracing:yes \
     --cfg=tracing/msg/process:yes
-LANG=C ; Paje simgrid.trace
+pajeng simgrid.trace
 ~~~~
 
 Alternatively, you can use [vite][fn:6].
@@ -395,7 +371,7 @@ Gantt-chart visualization may help:
 ~~~~{.sh}
 ./masterworker3 platforms/platform.xml deployment3.xml --cfg=tracing:yes \
     --cfg=tracing/msg/process:yes
-LANG=C; Paje simgrid.trace
+pajeng simgrid.trace
 ~~~~
 
 OK, so it should now be obvious that round robin is actually
@@ -430,7 +406,7 @@ void xbt_dynar_shift(xbt_dynar_t const dynar, void *const dst);
 unsigned long xbt_dynar_length(const xbt_dynar_t dynar);
 ~~~~
 
-%As you will soon realize, with such simple mechanisms, simple
+As you will soon realize, with such simple mechanisms, simple
 deadlocks will soon appear. They can easily be removed with a
 simple polling mechanism, hence the need for the following
 [function][fn:7]:
@@ -439,7 +415,7 @@ simple polling mechanism, hence the need for the following
 msg_error_t MSG_process_sleep(double nb_sec);
 ~~~~
 
-%As you should quickly realize, on the simple previous example, it
+As you should quickly realize, on the simple previous example, it
 will double the throughput of the platform but will be quite
 ineffective when input size of the tasks is not negligible anymore.
 
@@ -466,7 +442,7 @@ bytes that you manage to distribute and process in one hour on
 \section intro_todo TODO: Points to improve for the next time
 
 - Propose equivalent exercises and skeleton in java.
-- Propose a virtualbox image with everything (simgrid, paje, viva,
+- Propose a virtualbox image with everything (simgrid, pajeng, viva,
   ...) already set up.
 - Ease the installation on mac OS X (binary installer) and
   windows.
@@ -476,8 +452,8 @@ bytes that you manage to distribute and process in one hour on
 [fn:1]: http://triva.gforge.inria.fr/index.html
 [fn:2]: http://hal.inria.fr/inria-00529569
 [fn:3]: http://hal.inria.fr/hal-00738321
-[fn:4]: http://simgrid.gforge.inria.fr/documentation.html
-[fn:5]: http://paje.sourceforge.net/
+[fn:4]: http://simgrid.gforge.inria.fr/simgrid/latest/doc/
+[fn:5]: https://github.com/schnorr/pajeng/
 [fn:6]: http://vite.gforge.inria.fr/