From 4834f187a84f677242809a7413accb2a3009d6f4 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Wed, 28 Sep 2011 17:38:52 +0200 Subject: [PATCH] Print useful metrics at exit. --- main.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/main.cpp b/main.cpp index a11ef4a..9ad4b53 100644 --- a/main.cpp +++ b/main.cpp @@ -319,6 +319,7 @@ int main(int argc, char* argv[]) elapsed_time.stop(); if (!check_for_lost_load()) exit_status |= EXIT_FAILURE_LOAD; + XBT_INFO(",----[ Results ]"); PR_STATS("Load", loads); PR_STATS("Computation", comps); @@ -336,6 +337,18 @@ int main(int argc, char* argv[]) PR_VALUE("Total simulation time", "%g", simulation_time.duration()); PR_VALUE("Elapsed (wall clock) time", "%g", elapsed_time.duration()); XBT_INFO("`----"); + + double load_imbalance = 100.0 * loads.get_stddev() / loads.get_mean(); + double transfer_amount = + data_send_amount.get_sum() / opt::comm_cost(loads.get_sum()); + + XBT_INFO(",----[ Useful metrics ]"); + PR_VALUE("Final load imbalance", "%g %s", load_imbalance, + "percent of the load average"); + PR_VALUE("Data transfer amount", "%g %s", transfer_amount, + "times the total amount of data"); + XBT_INFO("`----"); + } if (exit_status) XBT_ERROR("Simulation failed (%#x).", exit_status); -- 2.39.5