geopm  3.1.1.dev296+g5916b956
GEOPM - Global Extensible Open Power Manager
Public Member Functions | Static Public Member Functions | List of all members
geopm::RegionHintRecommender Class Referenceabstract

Class ingesting the output from a DomainNetMap and a frequency map json file and determining a recommended frequency decision. More...

#include <RegionHintRecommender.hpp>

Inheritance diagram for geopm::RegionHintRecommender:
Inheritance graph
[legend]

Public Member Functions

virtual ~RegionHintRecommender ()=default
 
virtual double recommend_frequency (const std::map< std::string, double > &nn_output, double phi) const =0
 Recommends frequency based on the output from a DomainNetMap neural net evaluation. More...
 

Static Public Member Functions

static std::unique_ptr< RegionHintRecommendermake_unique (const std::string &fmap_path, int min_freq, int max_freq)
 Returns a unique_ptr to a concrete object constructed using the underlying implementation, which loads a frequency map file into a std::map of region class string to double, and sets both min and max frequency recommendations. More...
 
static std::shared_ptr< RegionHintRecommendermake_shared (const std::string &fmap_path, int min_freq, int max_freq)
 Returns a shared_ptr to a concrete object constructed using the underlying implementation, which loads a frequency map file into a std::map of region class string to double, and sets both min and max frequency recommendations. More...
 

Detailed Description

Class ingesting the output from a DomainNetMap and a frequency map json file and determining a recommended frequency decision.

Constructor & Destructor Documentation

◆ ~RegionHintRecommender()

virtual geopm::RegionHintRecommender::~RegionHintRecommender ( )
virtualdefault

Member Function Documentation

◆ make_shared()

std::shared_ptr< RegionHintRecommender > geopm::RegionHintRecommender::make_shared ( const std::string &  fmap_path,
int  min_freq,
int  max_freq 
)
static

Returns a shared_ptr to a concrete object constructed using the underlying implementation, which loads a frequency map file into a std::map of region class string to double, and sets both min and max frequency recommendations.

Parameters
[in]fmap_pathstring containing path to freq map json
[in]min_freqinteger containing minimum frequency
[in]max_freqinteger containing maximum frequency

◆ make_unique()

std::unique_ptr< RegionHintRecommender > geopm::RegionHintRecommender::make_unique ( const std::string &  fmap_path,
int  min_freq,
int  max_freq 
)
static

Returns a unique_ptr to a concrete object constructed using the underlying implementation, which loads a frequency map file into a std::map of region class string to double, and sets both min and max frequency recommendations.

Parameters
[in]fmap_pathstring containing path to freq map json
[in]min_freqinteger containing minimum frequency
[in]max_freqinteger containing maximum frequency

◆ recommend_frequency()

virtual double geopm::RegionHintRecommender::recommend_frequency ( const std::map< std::string, double > &  nn_output,
double  phi 
) const
pure virtual

Recommends frequency based on the output from a DomainNetMap neural net evaluation.

Parameters
[in]nn_outputOutput from the DomainNetMap neural net evaluation, as a map from trace names to doubles.
[in]phiUser-input perf-energy bias
Returns
Returns frequency, double in Hertz

Implemented in geopm::RegionHintRecommenderImp.


The documentation for this class was generated from the following files: