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.
|
|
virtual void | update (void)=0 |
| Read values from PlatformIO to update aggregated samples.
|
|
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.
|
|
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: