From 708fd642965410f359b8a171e7dc8d01d6238230 Mon Sep 17 00:00:00 2001 From: Kyle <kyle.c.klenk@gmail.com> Date: Wed, 20 Mar 2024 17:54:29 +0000 Subject: [PATCH] Fixed exit before write was finished --- build/includes/job_actor/node_actor.hpp | 3 +++ build/source/job_actor/distributed_job_actor.cpp | 2 -- build/source/job_actor/node_actor.cpp | 15 +++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/build/includes/job_actor/node_actor.hpp b/build/includes/job_actor/node_actor.hpp index 7481827..6bfa7f7 100644 --- a/build/includes/job_actor/node_actor.hpp +++ b/build/includes/job_actor/node_actor.hpp @@ -7,12 +7,15 @@ #include "hru_batch_actor.hpp" #include "file_access_actor.hpp" #include "job_actor.hpp" +#include "timing_info.hpp" namespace caf { struct node_state { actor current_server; std::string hostname; + + TimingInfo node_timing; int start_gru; int num_gru; diff --git a/build/source/job_actor/distributed_job_actor.cpp b/build/source/job_actor/distributed_job_actor.cpp index c27b5ee..c62cddf 100644 --- a/build/source/job_actor/distributed_job_actor.cpp +++ b/build/source/job_actor/distributed_job_actor.cpp @@ -182,8 +182,6 @@ behavior distributed_job_actor(stateful_actor<distributed_job_state>* self, << "Total Duration = " << total_dur_min << " Minutes\n" << "Total Duration = " << total_dur_hr << " Hours\n" << "___________________Program Finished__________________\n"; - - std::exit(0); } diff --git a/build/source/job_actor/node_actor.cpp b/build/source/job_actor/node_actor.cpp index de9d466..cc85e67 100644 --- a/build/source/job_actor/node_actor.cpp +++ b/build/source/job_actor/node_actor.cpp @@ -9,7 +9,12 @@ behavior node_actor(stateful_actor<node_state>* self, File_Access_Actor_Settings file_access_actor_settings, Job_Actor_Settings job_actor_settings, HRU_Actor_Settings hru_actor_settings) { + aout(self) << "Starting Node Actor\n"; + self->state.node_timing = TimingInfo(); + self->state.node_timing.addTimePoint("total_duration"); + self->state.node_timing.updateStartPoint("total_duration"); + self->set_down_handler([=](const down_msg& dm){ aout(self) << "Received Down Message\n"; }); @@ -154,6 +159,16 @@ behavior node_actor(stateful_actor<node_state>* self, [=](finalize) { aout(self) << "Done Simulation\n"; + self->state.node_timing.updateEndPoint("total_duration"); + double total_duration = self->state.node_timing.getDuration( + "total_duration").value_or(-1.0); + double total_dur_min = total_duration / 60; + double total_dur_hr = total_dur_min / 60; + aout(self) << "Total Duration: " << total_duration << " seconds\n" + << "Total Duration: " << total_dur_min << " minutes\n" + << "Total Duration: " << total_dur_hr << " hours\n" + << "___________________Node Finished__________________\n"; + std::exit(0); } }; -- GitLab