geopm 3.1.1.dev410+g40bf96ed
GEOPM - Global Extensible Open Power Manager
|
#include <Reporter.hpp>
Public Member Functions | |
ReporterImp (const std::string &start_time, PlatformIO &platform_io, const PlatformTopo &platform_topo, int rank) | |
ReporterImp (const std::string &start_time, PlatformIO &platform_io, const PlatformTopo &platform_topo, int rank, std::shared_ptr< SampleAggregator > sample_agg, std::shared_ptr< ProcessRegionAggregator > proc_agg, const std::string &report_name, const std::vector< std::pair< std::string, int > > &env_signal, const std::string &policy_path, bool do_endpoint, const std::string &profile_name, bool do_ctl_local) | |
virtual | ~ReporterImp ()=default |
void | init (void) override |
Handle any initialization that must take place after the Controller has connected to the application. | |
void | update (void) override |
Read values from PlatformIO to update aggregated samples. | |
void | generate (const std::string &agent_name, const std::vector< std::pair< std::string, std::string > > &agent_report_header, const std::vector< std::pair< std::string, std::string > > &agent_host_report, const std::map< uint64_t, std::vector< std::pair< std::string, std::string > > > &agent_region_report, const ApplicationIO &application_io, std::shared_ptr< Comm > comm, const TreeComm &tree_comm) override |
Create a report for this node. If the node is the root controller, format the header, aggregate all other node reports, and write the report to the file indicated in the environment. | |
std::string | generate (const std::string &profile_name, const std::string &agent_name, const std::vector< std::pair< std::string, std::string > > &agent_report_header, const std::vector< std::pair< std::string, std::string > > &agent_host_report, const std::map< uint64_t, std::vector< std::pair< std::string, std::string > > > &agent_region_report) override |
void | total_time (double total) override |
void | overhead (double overhead_sec, double sample_delay) override |
Public Member Functions inherited from geopm::Reporter | |
Reporter ()=default | |
virtual | ~Reporter ()=default |
geopm::ReporterImp::ReporterImp | ( | const std::string & | start_time, |
PlatformIO & | platform_io, | ||
const PlatformTopo & | platform_topo, | ||
int | rank | ||
) |
geopm::ReporterImp::ReporterImp | ( | const std::string & | start_time, |
PlatformIO & | platform_io, | ||
const PlatformTopo & | platform_topo, | ||
int | rank, | ||
std::shared_ptr< SampleAggregator > | sample_agg, | ||
std::shared_ptr< ProcessRegionAggregator > | proc_agg, | ||
const std::string & | report_name, | ||
const std::vector< std::pair< std::string, int > > & | env_signal, | ||
const std::string & | policy_path, | ||
bool | do_endpoint, | ||
const std::string & | profile_name, | ||
bool | do_ctl_local | ||
) |
|
virtualdefault |
|
overridevirtual |
Create a report for this node. If the node is the root controller, format the header, aggregate all other node reports, and write the report to the file indicated in the environment.
[in] | agent_name | Name of the Agent. |
[in] | agent_report_header | Optional list of key-value pairs from the agent to be added to the report header. |
[in] | agent_host_report | Optional list of key-value pairs from the agent to be added to the host section of the report. |
[in] | agent_region_report | Optional mapping from region ID to lists of key-value pairs from the agent to be added as additional information about each region. |
[in] | application_io | Reference to the ApplicationIO owned by the controller. |
[in] | comm | Shared pointer to the Comm owned by the controller. |
[in] | tree_comm | Reference to the TreeComm owned by the controller. |
Implements geopm::Reporter.
|
overridevirtual |
Implements geopm::Reporter.
|
overridevirtual |
Handle any initialization that must take place after the Controller has connected to the application.
Implements geopm::Reporter.
|
overridevirtual |
Implements geopm::Reporter.
|
overridevirtual |
Implements geopm::Reporter.
|
overridevirtual |
Read values from PlatformIO to update aggregated samples.
Implements geopm::Reporter.