X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/loba.git/blobdiff_plain/8d9632b768c69fa38bfc00cb58fcc9b7f3524755..7afbddc7bce5654b4b49095f75066b13c166fb14:/main.cpp?ds=inline diff --git a/main.cpp b/main.cpp index fc0843a..ff1fa1b 100644 --- a/main.cpp +++ b/main.cpp @@ -26,6 +26,8 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(main); #include "tracing.h" #include "version.h" +#define DATA_DESCR_WIDTH 37 + namespace { // Failure exit status enum { @@ -41,8 +43,16 @@ namespace { condition_t* proc_cond; unsigned proc_counter = 0; - statistics comps; statistics loads; + statistics comps; + statistics data_send_amount; + statistics data_recv_amount; + statistics data_send_count; + statistics data_recv_count; + statistics ctrl_send_amount; + statistics ctrl_recv_amount; + statistics ctrl_send_count; + statistics ctrl_recv_count; } @@ -60,8 +70,16 @@ static int simulation_main(int argc, char* argv[]) result = proc->run(); proc_mutex->acquire(); - comps.push(proc->get_comp()); loads.push(proc->get_real_load()); + comps.push(proc->get_comp_amount()); + 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()); + data_recv_count.push(proc->get_data_recv_count()); + ctrl_send_amount.push(proc->get_ctrl_send_amount()); + ctrl_recv_amount.push(proc->get_ctrl_recv_amount()); + ctrl_send_count.push(proc->get_ctrl_send_count()); + ctrl_recv_count.push(proc->get_ctrl_recv_count()); // Synchronization barrier... // The goal is to circumvent a limitation in SimGrid (at least @@ -114,8 +132,8 @@ static void check_for_lost_load() } #define PR_STATS(descr, st) \ - XBT_INFO("| %.*s: %g / %g / %g", 39, \ - descr " total/avg./stddev. at exit.........................", \ + XBT_INFO("| %.*s: %g / %g / %g", DATA_DESCR_WIDTH, \ + descr " (total/avg./stddev)................................", \ st.get_sum(), st.get_mean(), st.get_stddev()) int main(int argc, char* argv[]) @@ -239,9 +257,19 @@ int main(int argc, char* argv[]) XBT_INFO(",----[ Results ]"); PR_STATS("Load", loads); PR_STATS("Computation", comps); - XBT_INFO("| Total simulated time...................: %g", + 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_STATS("Data recv count", data_recv_count); + PR_STATS("Ctrl send amount", ctrl_send_amount); + PR_STATS("Ctrl recv amount", ctrl_recv_amount); + PR_STATS("Ctrl send count", ctrl_send_count); + PR_STATS("Ctrl recv count", ctrl_recv_count); + XBT_INFO("| %.*s: %g", DATA_DESCR_WIDTH, + "Total simulated time..................................", simulated_time); - XBT_INFO("| Total simulation time..................: %g", + XBT_INFO("| %.*s: %g", DATA_DESCR_WIDTH, + "Total simulation time.................................", simulation_time.duration()); XBT_INFO("`----"); }