|
geopm 3.2.1.dev237+gbe30cff60
GEOPM - Global Extensible Open Power Manager
|
Govern class of service (CLOS) controls. More...
#include <SSTClosGovernor.hpp>

Public Types | |
| enum | ClosLevel_e { HIGH_PRIORITY = 0 , MEDIUM_HIGH_PRIORITY = 1 , MEDIUM_LOW_PRIORITY = 2 , LOW_PRIORITY = 3 } |
Public Member Functions | |
| SSTClosGovernor ()=default | |
| virtual | ~SSTClosGovernor ()=default |
| virtual void | init_platform_io (void)=0 |
| Registers signals and controls with PlatformIO using the default control domain. | |
| virtual int | clos_domain_type (void) const =0 |
| Get the domain type of CLOS control on the platform. Users of the SSTClosGovernor can use this information to determine the size of the vector to pass to adjust_platform(). | |
| virtual void | adjust_platform (const std::vector< double > &clos_by_core)=0 |
| Write CLOS controls. | |
| virtual bool | do_write_batch (void) const =0 |
| Returns true if the last call to adjust_platform requires writing controls. | |
| virtual void | enable_sst_turbo_prioritization ()=0 |
| virtual void | disable_sst_turbo_prioritization ()=0 |
Static Public Member Functions | |
| static bool | is_supported (PlatformIO &platform_io) |
| static std::unique_ptr< SSTClosGovernor > | make_unique (void) |
| static std::shared_ptr< SSTClosGovernor > | make_shared (void) |
Govern class of service (CLOS) controls.
|
default |
|
virtualdefault |
|
pure virtual |
Write CLOS controls.
| [in] | clos_by_core | Desired per-core CLOS. |
Implemented in geopm::SSTClosGovernorImp.
|
pure virtual |
Get the domain type of CLOS control on the platform. Users of the SSTClosGovernor can use this information to determine the size of the vector to pass to adjust_platform().
Implemented in geopm::SSTClosGovernorImp.
|
pure virtual |
Disable prioritized turbo frequency and core priority features. This is a no-op if those features are not supported on the platform.
Implemented in geopm::SSTClosGovernorImp.
|
pure virtual |
Returns true if the last call to adjust_platform requires writing controls.
Implemented in geopm::SSTClosGovernorImp.
|
pure virtual |
Enable prioritized turbo frequency and core priority features. This is a no-op if those features are not supported on the platform.
Implemented in geopm::SSTClosGovernorImp.
|
pure virtual |
Registers signals and controls with PlatformIO using the default control domain.
Implemented in geopm::SSTClosGovernorImp.
|
static |
Indicate whether this platform supports core priority and prioritized turbo frequency limits.
|
static |
|
static |