level : trace, debug, verbose, info, warning, error, critical
Pour plus de détail sur les options de logging :
- http://simgrid.gforge.inria.fr/doc/group__XBT__log.html#log_use
+ http://simgrid.gforge.inria.fr/simgrid/latest/doc/outcomes_logs.html#log_user
Sorties
=======
* pendant la simulation :
-[Bourassa 5.000000] [proc/INFO] (6:1) current load: 5 ; expected: 0.3125
- +------- +------- +-------- + + +-------------- +--------------
- | | | | | | \_ charge attendue
- | | | | | | (en bookkeeping)
- | | | | | \_ charge courante
+[Bourassa 5.000000] [proc/INFO] (6:1) current load: 5
+ +------- +------- +-------- + + -----+---------
+ | | | | | |
+ | | | | | \_ charge courante
| | | | |
| | | | \_ nombre d'itérations de calculs
| | | |
\ nom du nœud
* à la fin de la simulation :
-[Bourassa 108.886866] [proc/INFO] Final load after 107:4 iterations: 1.04113 ; expected: 1
- +------- +--------- +-------- +-- + +------ +----------
- | | | | | | \_ charge attendue
- | | | | | | (en bookkeeping)
+[Bourassa 108.886866] [proc/INFO] Final load after 107:4 iterations: 1.04113
+ +------- +--------- +-------- +-- + +------
| | | | | |
- | | | | | \_ charge courante
+ | | | | | \_ charge
+ | | | | | courante
| | | | |
- | | | | \_ nombre d'itérations de calculs
+ | | | | \_ nombre d'itérations
+ | | | | de calculs
| | | |
- | | | \_ nombre d'itérations d'équilibrage
+ | | | \_ nombre d'itérations
+ | | | d'équilibrage
| | |
| | \_ catégorie de messages
| |
de simulation et de le présenter sous un format acceptable par gnuplot
ou par graph (plotutils).
-Exemple:
+Exemples:
./loba platform.xml 2>&1 | ./extract.pl | graph -CTX
+ ./loba platform.xml 2>&1 | ./extract.pl | graph -CTX -y 0 250
+
+ ./loba platform.xml 2>&1 | ./extract.pl \
+ | gnuplot -p -e 'plot "-" using 1:2:(column(-2)) with lines lc variable'
+
Communications
==============
pneigh[i]->get_load() ;
- définit la charge à envoyer avec
send(pneigh[i], quantité) ;
+ NB: le script new_loba.sh peut servir à créer les fichiers.
2. Ajouter l'algorithme dans la liste des options. Dans options.cpp :
- faire le #include adéquat ;
* fichiers sources
- communicator.h
- communicator.cpp la couche de communication
+ communicator.h la couche de communication
+ communicator.cpp
- cost_func.h
- cost_func.cpp fonctions de coût pour comm_cost et comp_cost
+ cost_func.h fonctions de coût pour comm_cost et comp_cost
+ cost_func.cpp
- deployment.h
- deployment.cpp génération automatique de déploiement
+ deployment.h génération automatique de déploiement
+ deployment.cpp
hostdata.h gestion des boites de réception, par hôte
hostdata.cpp
main.cpp le programme principal
+ message.h file de messages reçus
+ message.cpp
+
misc.h divers trucs inclassables
misc.cpp
+ msg_thread.h creation de threads SG/MSG
+ msg_thread.cpp
+
named_object_list.h gestion d'une table de constructeurs
avec des noms et des descriptions
simgrid_features.h macros pour détecter la version de SimGrid
- simple_async.cpp un simple programme de test
+ statistics.h pour calculer moyenne, variance, etc.
+
+ synchro.h mutex, condition, etc.
+
+ sync_queue.h lock-free synchronized queue
timer.h gestion de timer
+ tracing.h définitions liées au traçage
+
version.h gestion de la version du programme
version.cpp
extract.pl outil d'extraction des données à partir des
traces, pour tracer des courbes
+ new_loba.sh pour créer le squelette d'un nouvel algo
+ d'équiblibrage loba_*
+
setlocalversion calcule un numéro de version à partir du hash
du dernier commit (git)
* autres fichiers
.gitignore liste des fichiers ignorés par git
- valgrind_suppressions_3.5 liste de quelques suppressions pour valgrind
+ valgrind_suppressions liste de quelques suppressions pour valgrind
avec SimGrid 3.5