X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/loba.git/blobdiff_plain/e8cd9a72c8bb979e62f220854ad8c25db52edee7..09d41417e496c5599b00a615f4b3d67b0f6270f3:/main.cpp diff --git a/main.cpp b/main.cpp index dd8b661..011b258 100644 --- a/main.cpp +++ b/main.cpp @@ -53,6 +53,7 @@ namespace { statistics comps; statistics comp_iterations; statistics all_comp_iterations; + statistics iter_deviation; statistics data_send_amount; statistics data_recv_amount; statistics data_send_count; @@ -84,6 +85,7 @@ static int simulation_main(int argc, char* argv[]) comps.push(proc->get_comp_amount()); comp_iterations.push(proc->get_comp_iter()); all_comp_iterations.push(proc->get_all_comp_iter()); + iter_deviation.push(proc->get_iter_deviation()); data_send_amount.push(proc->get_data_send_amount()); data_recv_amount.push(proc->get_data_recv_amount()); data_send_count.push(proc->get_data_send_count()); @@ -192,9 +194,10 @@ static void install_signal_handler() int main(int argc, char* argv[]) { - // Note: variables used after THROW must be declared as volatile. - volatile int exit_status = 0; // global exit status - volatile double simulated_time = -1.0; + // Note: variables modified between TRY (setjmp) and THROW (longjmp) + // must be declared as static or volatile. + static int exit_status = 0; // global exit status + static double simulated_time = -1.0; timestamp elapsed_time(timestamp::wallclock_time); timestamp simulation_time(timestamp::cpu_time); xbt_ex_t ex; @@ -331,7 +334,6 @@ int main(int argc, char* argv[]) PR_STATS("Computation", comps); PR_STATS("Comp. iterations", comp_iterations); PR_STATS("X-Comp. iterations", all_comp_iterations); - PR_STATS("Idle duration", idle_duration); PR_STATS("Data send amount", data_send_amount); PR_STATS("Data recv amount", data_recv_amount); PR_STATS("Data send count", data_send_count); @@ -359,6 +361,8 @@ int main(int argc, char* argv[]) PR_VALUE("Times of convergence (min/max/avg/dev)", "%g / %g / %g / %g", convergence.get_min(), convergence.get_max(), convergence.get_mean(), convergence.get_stddev()); + PR_STATS("Idle duration", idle_duration); + PR_STATS("Supernumer. comp. iter.", iter_deviation); XBT_INFO("`----"); }