]> AND Private Git Repository - loba.git/blobdiff - process.cpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Define process::lb_load(), and use it.
[loba.git] / process.cpp
index ac9ab244dfd65103da9cfd2705f2948ad65372d3..0afbf2950781c4ac33139c2cbfbb3f2bf0a70ebe 100644 (file)
@@ -91,10 +91,9 @@ int process::run()
                           comp_iter, load);
             }
 
-            if (opt::bookkeeping)
-                expected_load -= load_balance(expected_load);
-            else
-                load -= load_balance(load);
+            double ld = lb_load();
+            ld -= load_balance(ld);
+            lb_load() = ld;
 
             print_loads(true, xbt_log_priority_debug);
 
@@ -121,9 +120,7 @@ int process::run()
 
         // block on receiving unless there is something to compute or
         // to send
-        bool wait = (load == 0 &&
-                     ((opt::bookkeeping ? expected_load : load)
-                      == prev_load_broadcast));
+        bool wait = (load == 0 && lb_load() == prev_load_broadcast);
         receive(wait);
 
         // one of our neighbor is finalizing