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;
PR_STATS("Computation", comps);
PR_STATS("Comp. iterations", comp_iterations);
PR_STATS("X-Comp. iterations", all_comp_iterations);
- PR_STATS("Supernumer. comp. iter.", iter_deviation);
- 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);
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("`----");
}