X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/loba.git/blobdiff_plain/5ac6e4c95a58f2daef49121f2f8ce4461d8014b2..bac81c82d2e1d7cf13bb89160c1a0a6ab36647cb:/BUGS

diff --git a/BUGS b/BUGS
index 9ae9690..464e620 100644
--- a/BUGS
+++ b/BUGS
@@ -1,9 +1,37 @@
 ========================================================================
-Il faut réviser l'utilisation du mutex entre le thread d'équilibrage
-et le thread de calcul.  Il semble gardé beaucoup trop longtemps.
+Les fonctions MSG_get_host{number,table} n'existent plus dans les
+dernières versions de SimGrid.  Utiliser MSG_hosts_as_dynar à la place.
+
+========================================================================
+Les exécutions parallèles donnent des résultats différents.
+Pourquoi ?
+
+========================================================================
+Les variables globales process::total_load_* ne sont pas protégées
+contre les accès concurrents.  Il n'est donc pas possible actuellement
+d'exécuter les simulations en parallèle (--cfg=contexts/nthreads).
+
+Corrigé en partie.  Il reste quelques "fixme: get locked?" à régler
+(ou pas).
 
 ========================================================================
 ##### RESOLVED BUGS COME AFTER THIS ####################################
+========================================================================
+Il faut réviser l'utilisation du mutex entre le thread d'équilibrage
+et le thread de calcul.  Il semble gardé beaucoup trop longtemps.
+
+Bon, une partie du problème est rectifiée par le commit
+48de954 Stop locking the mutex on data_receive.
+
+Pour le reste, je pense maintenant que ça ne gêne pas, au moins dans
+le simulateur.  Pour faire bien, il faudrait plus séparer les deux
+threads d'équilibrage et de calcul, et faire en sorte que chacun garde
+un cache des données globales partagées.  Il suffirait alors de
+synchroniser ces caches à chaque itération.
+
+Les données partagées sont essentiellement les données des voisins :
+load, to_send et debt.
+
 ========================================================================
 Comment expliquer ces différences entre SG 3.5 et SG svn ?