geopm
3.1.1.dev296+g5916b956
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. More... | |
void | update (void) override |
Read values from PlatformIO to update aggregated samples. More... | |
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. More... | |
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.