diff --git a/src/vt/vrt/collection/balance/workload_replay.cc b/src/vt/vrt/collection/balance/workload_replay.cc index 2c22a99bd6..b57198cd38 100644 --- a/src/vt/vrt/collection/balance/workload_replay.cc +++ b/src/vt/vrt/collection/balance/workload_replay.cc @@ -59,7 +59,7 @@ void replayWorkloads( ) { // read in object loads from json files auto const filename = theConfig()->getLBStatsFileIn(); - auto workloads = WorkloadDataMigrator::readInWorkloads(filename); + auto workloads = readInWorkloads(filename); replayWorkloads(initial_phase, phases_to_run, workloads); } @@ -207,6 +207,33 @@ void replayWorkloads( } } +std::shared_ptr<StatsData> +readInWorkloads(const std::string &filename) { + using util::json::Reader; + + Reader r{filename}; + auto json = r.readFile(); + auto sd = std::make_shared<StatsData>(*json); + + for (auto &phase_data : sd->node_data_) { + vt_debug_print( + normal, replay, + "found {} loads for phase {}\n", + phase_data.second.size(), phase_data.first + ); + } + + for (auto &phase_data : sd->node_comm_) { + vt_debug_print( + normal, replay, + "found {} comms for phase {}\n", + phase_data.second.size(), phase_data.first + ); + } + + return sd; +} + /*static*/ objgroup::proxy::Proxy<WorkloadDataMigrator> @@ -258,34 +285,6 @@ WorkloadDataMigrator::updateCurrentNodes( return modified_reassignment; } -/*static*/ -std::shared_ptr<StatsData> -WorkloadDataMigrator::readInWorkloads(std::string filename) { - using util::json::Reader; - - Reader r{filename}; - auto json = r.readFile(); - auto sd = std::make_shared<StatsData>(*json); - - for (auto &phase_data : sd->node_data_) { - vt_debug_print( - normal, replay, - "found {} loads for phase {}\n", - phase_data.second.size(), phase_data.first - ); - } - - for (auto &phase_data : sd->node_comm_) { - vt_debug_print( - normal, replay, - "found {} comms for phase {}\n", - phase_data.second.size(), phase_data.first - ); - } - - return sd; -} - /*static*/ std::shared_ptr<ProposedReassignment> WorkloadDataMigrator::relocateWorkloadsForReplay( diff --git a/src/vt/vrt/collection/balance/workload_replay.h b/src/vt/vrt/collection/balance/workload_replay.h index 2003856e62..548dd56219 100644 --- a/src/vt/vrt/collection/balance/workload_replay.h +++ b/src/vt/vrt/collection/balance/workload_replay.h @@ -94,6 +94,17 @@ void replayWorkloads( std::shared_ptr<StatsData> workloads ); +/** + * \brief Build a StatsData object from the LB data in a json file + * + * \param[in] filename read in LB data from the specified json file + * + * \return the StatsData object built from the LB data + */ +std::shared_ptr<StatsData> +readInWorkloads(const std::string &filename); + + /** * \struct WorkloadDataMigrator * @@ -139,16 +150,6 @@ struct WorkloadDataMigrator : lb::BaseLB { std::shared_ptr<const Reassignment> lb_reassignment ); - /** - * \brief Build a StatsData object from the LB data in a json file - * - * \param[in] filename read in LB data from the specified json file - * - * \return the StatsData object built from the LB data - */ - static std::shared_ptr<StatsData> - readInWorkloads(std::string filename); - /** * \brief Relocate object workloads to the rank where the objects are supposed * to exist during this phase