A class used by the Controller to format the report at the end of a run. Most of the information for the report is passed into the generate() method at the end of a run, however the Reporter is also responsible for pushing some per-region signals to indicate that they should be tracked by the PlatformIO.
More...
#include <Reporter.hpp>
|
| Reporter ()=default |
|
virtual | ~Reporter ()=default |
|
virtual void | init (void)=0 |
| Handle any initialization that must take place after the Controller has connected to the application. More...
|
|
virtual void | update (void)=0 |
| Read values from PlatformIO to update aggregated samples. More...
|
|
virtual 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)=0 |
| 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...
|
|
virtual 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)=0 |
|
virtual void | total_time (double total)=0 |
|
virtual void | overhead (double overhead_sec, double sample_delay)=0 |
|
A class used by the Controller to format the report at the end of a run. Most of the information for the report is passed into the generate() method at the end of a run, however the Reporter is also responsible for pushing some per-region signals to indicate that they should be tracked by the PlatformIO.
◆ Reporter()
geopm::Reporter::Reporter |
( |
| ) |
|
|
default |
◆ ~Reporter()
virtual geopm::Reporter::~Reporter |
( |
| ) |
|
|
virtualdefault |
◆ generate() [1/2]
virtual void geopm::Reporter::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 |
|
) |
| |
|
pure virtual |
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.
- Parameters
-
[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. |
Implemented in geopm::ReporterImp.
◆ generate() [2/2]
virtual std::string geopm::Reporter::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 |
|
) |
| |
|
pure virtual |
◆ init()
virtual void geopm::Reporter::init |
( |
void |
| ) |
|
|
pure virtual |
◆ overhead()
virtual void geopm::Reporter::overhead |
( |
double |
overhead_sec, |
|
|
double |
sample_delay |
|
) |
| |
|
pure virtual |
◆ total_time()
virtual void geopm::Reporter::total_time |
( |
double |
total | ) |
|
|
pure virtual |
◆ update()
virtual void geopm::Reporter::update |
( |
void |
| ) |
|
|
pure virtual |
Read values from PlatformIO to update aggregated samples.
Implemented in geopm::ReporterImp.
The documentation for this class was generated from the following file: