Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
now that mmalloc doesn't break tesh anymore nor nothing visible, enable the legacy...
[simgrid.git] / doc / FAQ.doc
index bc1d58d..5f82438 100644 (file)
@@ -72,29 +72,7 @@ filter (e.g. with bash):
 ./msg_test small_platform.xml small_deployment.xml 2>&1 | ../../tools/MSG_visualization/colorize.pl
 \endverbatim
 
-We also have a more graphical output. Have a look at MSG_paje_output(). It 
-generates an input to <a href="http://www-id.imag.fr/Logiciels/paje/">Paje</a>.
-<center>
-\htmlonly
- <a href="Paje_MSG_screenshot.jpg"><img src="Paje_MSG_screenshot_thn.jpg"></a>
-\endhtmlonly
-</center>
-
-Visualization with Paje can be seen as a kind of postmortem
-analysis. However, as soon as you start playing with big simulations,
-you'll realize that processing such output is kind of tricky. There is
-so much generic information that it is hard to find the information
-you are looking for.
-
-As a matter of fact, logging really depends on simulations (e.g. what
-kind of events is important...). That is why we do not propose a big
-dump of your whole simulation (it would slow everything down) but give
-you neat tools to structure you logs. Have a look at \ref XBT_log. In
-fact, rather than a post-mortem analysis, you may want to do it on the
-fly. The process you are running can do whatever you want. Have you
-thought about adding a global structure where you directly compute the
-information that are really important rather than writing everything
-down and then processing huge files?
+We also have a more graphical output. Have a look at section \ref faq_tracing.
 
 \subsection faq_C Argh! Do I really have to code in C?
 
@@ -397,13 +375,13 @@ TODO
 \verbatim
 "cmake -D[name]=[value] ... ./"
  
-[name]                 disable_gtnets                  [value] ON/OFF or TRUE/FALSE or 1/0
-               disable_java                            ON/OFF or TRUE/FALSE or 1/0
-               disable_lua                             ON/OFF or TRUE/FALSE or 1/0
-               disable_ruby                            ON/OFF or TRUE/FALSE or 1/0
-
+[name]                 enable_gtnets                   [value] ON/OFF or TRUE/FALSE or 1/0
+               enable_java                             ON/OFF or TRUE/FALSE or 1/0
+               enable_lua                              ON/OFF or TRUE/FALSE or 1/0
+               enable_ruby                             ON/OFF or TRUE/FALSE or 1/0
                enable_compile_optimizations            ON/OFF or TRUE/FALSE or 1/0
                enable_compile_warnings                 ON/OFF or TRUE/FALSE or 1/0
+               enable_smpi                             ON/OFF or TRUE/FALSE or 1/0
                enable_maintainer_mode                  ON/OFF or TRUE/FALSE or 1/0
                enable_supernovae                       ON/OFF or TRUE/FALSE or 1/0
                enable_tracing                          ON/OFF or TRUE/FALSE or 1/0
@@ -419,18 +397,20 @@ TODO
                                                                                                                                                           
 \subsubsection faq_cmakeoption2 Options explaination
 
-  \li disable_gtnets : set to true implie that user doesn't want to use gtnets.
+  \li enable_gtnets : set to true implie that user wants to use gtnets.
 
-  \li disable_java : set to true implie that user doesn't want to add java langage into simgrid compilation.
+  \li enable_java : set to true implie that user wants to add java langage into simgrid compilation.
 
-  \li disable_lua : set to true implie that user doesn't want to add lua langage into simgrid compilation.
+  \li enable_lua : set to true implie that user wants to add lua langage into simgrid compilation.
 
-  \li disable_ruby : set to true implie that user doesn't want to add ruby langage into simgrid compilation.
+  \li enable_ruby : set to true implie that user wants to add ruby langage into simgrid compilation.
 
   \li enable_compile_optimizations : add flags "-O3 -finline-functions -funroll-loops -fno-strict-aliasing"
 
   \li enable_compile_warnings : add flags "-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror"
 
+  \li enable_smpi : Set to true if you want to use smpi lib. Actually on simgrid v3.4.1 Mac doesn't support lib smpi.
+
   \li enable_maintainer_mode : set to true it remakes some files.
 \verbatim
 include/surf/simgrid_dtd.h
@@ -489,13 +469,13 @@ src/gras/DataDesc/ddt_parse.yy.c
 Those options are initialized the first time you launch \"cmake ./\" whithout specified option.
 
 \verbatim
-disable_gtnets                 off
-disable_java                   off
-disable_lua                    off
-disable_ruby                   off
-
+enable_gtnets                  on
+enable_lua                     on
+enable_ruby                    on
+enable_java                    off
 enable_compile_optimizations   off
 enable_compile_warnings                off
+enable_smpi                    on
 enable_maintainer_mode         off
 enable_supernovae              off
 enable_tracing                 off
@@ -537,6 +517,7 @@ Then follow instructions.
 cmake ./               configure the project
 make                   build all targets
 make VERBOSE=1         build all targets and print build command lines
+make check             execute command make test
 make test              test all targets and summarize
 make dist              make the distrib
 make distcheck         check the dist (make + make dist + make test) 
@@ -576,142 +557,144 @@ If you want to test before make a commit you can simply make "ctest -D Experimen
 \li Mode maintainer
 
 cmake -Denable_maintainer_mode=on ./
-\verbatim GTnetS doesn't works : set -Ddisable_gtnets=on
+\verbatim 
+-- lookign for config.h
 with_context auto change to ucontext
-(skaddr)
-(sksize)
-Make : src/simgrid.jar with : /usr/bin/javac
-Make examples/java with : /usr/bin/javac
+GIT_DATE       : 2010-05-04~09-59-15
+GIT_VERSION    : 53ec816
+GIT_SVN_VERSION : 7669
 
-Configuration of package `simgrid' (revision 7228M) on arch (=4):
-       BUILDNAME :             UCONTEXT
-            SITE :             Linux_Ubuntu 9.10_x86_64
+Configuration of package `simgrid' (revision 7669) on arch (=4):
+            BUILDNAME :        UCONTEXT
+            SITE      :        Linux_2.6.31-21-generic_x86_64
+            Release   :        simgrid-3.4~rev7669
 
-       Compiler: c++ :         /usr/bin/c++
-              version:         c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
-                 c   :         /usr/bin/gcc
-              version:         gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c++ :        /usr/bin/c++
+               version:        c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c   :        /usr/bin/gcc
+               version:        gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
 
-       CFlags:                 -g3
-       CPPFlags:               
-       LDFlags:                
+              CFlags  :        -I/usr/lib/ruby/1.8/x86_64-linux -I/usr/include/lua5.1 -g3
+              CPPFlags:        
+              LDFlags :        -L/usr/lib/
 
        Context backend:        ucontext
-       Compile Gtnets:         0
-                 path:         
-       Compile Java:           1
-       Compile Lua:            1
-       Compile Ruby:           0
-
-       Maintainer mode:        on
-       Supernovae mode:        off
+       Compile Gtnets :        0
+       Gtnets path    :        
+       Compile Java   :        0
+       Compile Lua    :        1
+       Compile Ruby   :        1
+
+       Compile Smpi   :        ON
+       Maintainer mode:        ON
+       Supernovae mode:        OFF
+       Tracing mode   :        OFF
 
-       Simgrid dependencies:   dl -llua5.1
-       Gras dependencies:      pthread
-       Ruby dependencies:      
-       Smpi dependencies:      
+       Simgrid dependencies:   -lm -lruby1.8 -module -ldl -llua5.1 -lrt
+       Gras dependencies   :   -lm -lpthread -lrt
+       Smpi dependencies   :   
 
-       USER_PREFIX:            /usr/local
        INSTALL_PREFIX:         /usr/local
 
 -- Configuring done
 -- Generating done
--- Build files have been written to: /home/navarrop/Bureau/simgrid-trunk
+-- Build files have been written to: /home/navarrop/Developments/simgrid
 \endverbatim
 
 \li Mode supernovae
 
 cmake -Dsupernovae=on ./
-\verbatim GTnetS doesn't works : set -Ddisable_gtnets=on
+\verbatim 
+-- lookign for config.h
 with_context auto change to ucontext
-(skaddr)
-(sksize)
-Make : src/simgrid.jar with : /usr/bin/javac
-Make examples/java with : /usr/bin/javac
+GIT_DATE       : 2010-05-04~09-59-15
+GIT_VERSION    : 53ec816
+GIT_SVN_VERSION : 7669
 
-Configuration of package `simgrid' (revision 7228M) on arch (=4):
-       BUILDNAME :             SUPERNOVAE
-            SITE :             Linux_Ubuntu 9.10_x86_64
+Configuration of package `simgrid' (revision 7669) on arch (=4):
+            BUILDNAME :        SUPERNOVAE
+            SITE      :        Linux_2.6.31-21-generic_x86_64
+            Release   :        simgrid-3.4~rev7669
 
-       Compiler: c++ :         /usr/bin/c++
-              version:         c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
-                 c   :         /usr/bin/gcc
-              version:         gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c++ :        /usr/bin/c++
+               version:        c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c   :        /usr/bin/gcc
+               version:        gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
 
-       CFlags:                 -O3 -finline-functions -funroll-loops -fno-strict-aliasing -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror -g3
-       CPPFlags:               
-       LDFlags:                
+              CFlags  :        -O3 -finline-functions -funroll-loops -fno-strict-aliasing -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror -I/usr/lib/ruby/1.8/x86_64-linux -I/usr/include/lua5.1 -g3
+              CPPFlags:        
+              LDFlags :        -L/usr/lib/
 
        Context backend:        ucontext
-       Compile Gtnets        0
-                 path:         
-       Compile Java:           1
-       Compile Lua:            1
-       Compile Ruby:           0
+       Compile Gtnets :        0
+       Gtnets path    :        
+       Compile Java   :        0
+       Compile Lua    :        1
+       Compile Ruby   :        1
 
-       Maintainer mode:        off
-       Supernovae mode:        on
+       Compile Smpi   :        ON
+       Maintainer mode:        OFF
+       Supernovae mode:        OFF
+       Tracing mode   :        OFF
 
-       Simgrid dependencies:   dl -llua5.1
-       Gras dependencies:      pthread
-       Ruby dependencies:      
-       Smpi dependencies:      
+       Simgrid dependencies:   -lm -lruby1.8 -module -ldl -llua5.1 -lrt
+       Gras dependencies   :   -lm -lpthread -lrt
+       Smpi dependencies   :   
 
-       USER_PREFIX:            /usr/local
        INSTALL_PREFIX:         /usr/local
 
 -- Configuring done
 -- Generating done
--- Build files have been written to: /home/navarrop/Bureau/simgrid-trunk
+-- Build files have been written to: /home/navarrop/Developments/simgrid
+
 \endverbatim
 
 \li Mode GTnetS
 
 cmake -Dgtnets_path=/home/navarrop/Bureau/usr/ ./
-\verbatim with_context auto change to ucontext
-(skaddr)
-(sksize)
-Make : src/simgrid.jar with : /usr/bin/javac
-Make examples/java with : /usr/bin/javac
+\verbatim 
+-- lookign for config.h
+with_context auto change to ucontext
+GIT_DATE       : 2010-05-04~09-59-15
+GIT_VERSION    : 53ec816
+GIT_SVN_VERSION : 7669
 
-Configuration of package `simgrid' (revision 7228M) on arch (=4):
-       BUILDNAME :             GTNETS
-            SITE :             Linux_Ubuntu 9.10_x86_64
+Configuration of package `simgrid' (revision 7669) on arch (=4):
+            BUILDNAME :        GTNETS
+            SITE      :        Linux_2.6.31-21-generic_x86_64
+            Release   :        simgrid-3.4~rev7669
 
-       Compiler: c++ :         /usr/bin/c++
-              version:         c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
-                 c   :         /usr/bin/gcc
-              version:         gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c++ :        /usr/bin/c++
+               version:        c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
+        Compiler: c   :        /usr/bin/gcc
+               version:        gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
 
-       CFlags:                  -L/home/navarrop/Bureau/usr/lib -I/home/navarrop/Bureau/usr/include/gtnets -g3
-       CPPFlags:                -L/home/navarrop/Bureau/usr/lib -I/home/navarrop/Bureau/usr/include/gtnets 
-       LDFlags:                
+              CFlags  :        -O3 -finline-functions -funroll-loops -fno-strict-aliasing -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror -I/usr/lib/ruby/1.8/x86_64-linux -L/usr/lib -I/usr/include/gtnets -I/usr/include/lua5.1 -g3
+              CPPFlags:        -L/usr/lib -I/usr/include/gtnets 
+              LDFlags :        -L/usr/lib/
 
        Context backend:        ucontext
-       Compile Gtnets        1
-                 path:         /home/navarrop/Bureau/usr
-       Compile Java:           1
-       Compile Lua:            1
-       Compile Ruby:           0
+       Compile Gtnets :        1
+       Gtnets path    :        /usr
+       Compile Java   :        0
+       Compile Lua    :        1
+       Compile Ruby   :        1
 
-       Maintainer mode:        off
-       Supernovae mode:        off
+       Compile Smpi   :        ON
+       Maintainer mode:        OFF
+       Supernovae mode:        OFF
+       Tracing mode   :        OFF
 
-       Simgrid dependencies:   dl -llua5.1 -lgtnets
-       Gras dependencies:      pthread
-       Ruby dependencies:      
-       Smpi dependencies:      
+       Simgrid dependencies:   -lm -lruby1.8 -module -ldl -llua5.1 -lgtnets -lrt
+       Gras dependencies   :   -lm -lpthread -lrt
+       Smpi dependencies   :   
 
-       USER_PREFIX:            /usr/local
        INSTALL_PREFIX:         /usr/local
 
-INFO -->> Take care to have export LD_LIBRARY_PATH before run make command for make examples with gtnets
-copy and paste : export LD_LIBRARY_PATH=/home/navarrop/Bureau/usr/lib/:$LD_LIBRARY_PATH
-
-
 -- Configuring done
 -- Generating done
--- Build files have been written to: /home/navarrop/Bureau/simgrid-trunk
+-- Build files have been written to: /home/navarrop/Developments/simgrid
+
 \endverbatim
 
 \subsection faq_cmakeinstall How to install with cmake?
@@ -732,57 +715,6 @@ make
 make install-simgrid
 \endverbatim
 
-\subsection faq_screenshot Screenshot
-
-\verbatim
-navarrop@caraja:~$ cd Bureau/simgrid-trunk/
-navarrop@caraja:~/Bureau/simgrid-trunk$ cmake ./
-
-GTnetS doesn't works : set -Ddisable_gtnets=on                  <-|some warnings are printed 
-with_context auto change to ucontext                           <-|
-(skaddr)                                                       <--info (needed)
-(sksize)                                                       <--info (needed)
-Make : src/simgrid.jar with : /usr/bin/javac                   <--info (if java)
-Make examples/java with : /usr/bin/javac                       <--info (if java)
-
-Configuration of package `simgrid' (revision 7209M) on arch (=4):
-       BUILDNAME :             UCONTEXT                                <-- name of the compilation regarding to cdash
-            SITE :             Linux_Ubuntu 9.10_x86_64                <-- distribution of the local machine regarding to cdash
-
-       Compiler: c++ :         /usr/bin/c++
-              version:         c++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
-                 c   :         /usr/bin/gcc
-              version:         gcc (Ubuntu 4.4.1-4ubuntu9) 4.4.1
-
-       CFlags:                 -g3
-       CPPFlags:               
-       LDFlags:                
-
-       Context backend:        ucontext
-       Compile Gtnets:         0
-                 path:         
-       Compile Java:           1
-       Compile Lua:            1
-       Compile Ruby:           0
-
-       Maintainer mode:        OFF
-       Supernovae mode:        OFF
-
-       Simgrid dependencies:   -ldl -llua5.1
-       Gras dependencies:      pthread
-       Ruby dependencies:      
-       Smpi dependencies:      
-
-       USER_PREFIX:            /usr/local
-       INSTALL_PREFIX:         /usr/local
-
--- Configuring done
--- Generating done
--- Build files have been written to: /home/navarrop/Bureau/simgrid-trunk
-\endverbatim
-Here all options are checked and printed. If it doesn't match with your configuration 
-it is probably due to a wrong configuration.
-
 \subsection faq_cmakehowto How to modified sources files for developers
 
 \subsubsection faq_cmakehowto1 Add an executable or examples.
@@ -1673,13 +1605,34 @@ Other models have been proposed and implemented since then (see for example
 <a href="http://mescal.imag.fr/membres/arnaud.legrand/articles/simutools09.pdf">Accuracy Study and Improvement of Network Simulation in the SimGrid Framework</a>)
 and can be activated at runtime. For example:
 \verbatim
-./mycode platform.xml deployment.xml --cfg=workstation_model:compound --cfg=network_model:LV08 -cfg=cpu_model:Cas01
+./mycode platform.xml deployment.xml --cfg=workstation/model:compound --cfg=network/model:LV08 -cfg=cpu/model:Cas01
 \endverbatim
 
 Possible models for the network are currently "Constant", "CM02",
 "LegrandVelho", "GTNets", Reno", "Reno2", "Vegas". Others will
 probably be added in the future and many of the previous ones are
-experimental and are likely to disappear without notice...
+experimental and are likely to disappear without notice... To know the
+list of the currently  implemented models, you should use the
+--help-models command line option.
+
+\verbatim
+./masterslave_forwarder ../small_platform.xml deployment_masterslave.xml  --help-models
+Long description of the workstation models accepted by this simulator:
+  CLM03: Default workstation model, using LV08 and CM02 as network and CPU
+  compound: Workstation model allowing you to use other network and CPU models
+  ptask_L07: Workstation model with better parallel task modeling
+Long description of the CPU models accepted by this simulator:
+  Cas01_fullupdate: CPU classical model time=size/power
+  Cas01: Variation of Cas01_fullupdate with partial invalidation optimization of lmm system. Should produce the same values, only faster
+  CpuTI: Variation of Cas01 with also trace integration. Should produce the same values, only faster if you use availability traces
+Long description of the network models accepted by this simulator:
+  Constant: Simplistic network model where all communication take a constant time (one second)
+  CM02: Realistic network model with lmm_solve and no correction factors
+  LV08: Realistic network model with lmm_solve and these correction factors: latency*=10.4, bandwidth*=.92, S=8775
+  Reno: Model using lagrange_solve instead of lmm_solve (experts only)
+  Reno2: Model using lagrange_solve instead of lmm_solve (experts only)
+  Vegas: Model using lagrange_solve instead of lmm_solve (experts only)
+\endverbatim
 
 \subsection faq_tracing Tracing Simulations for Visualization