Inheritance diagram for mammut::cpufreq::CpuFreq:

Public Member Functions

virtual std::vector< Domain * > getDomains () const =0
 
DomaingetDomain (const topology::VirtualCore *virtualCore) const
 
std::vector< Domain * > getDomains (const std::vector< topology::VirtualCore * > &virtualCores) const
 
std::vector< Domain * > getDomains (const topology::PhysicalCore *physicalCore) const
 
std::vector< Domain * > getDomains (const topology::Cpu *cpu) const
 
std::vector< Domain * > getDomainsComplete (const std::vector< topology::VirtualCore * > &virtualCores) const
 
std::vector< RollbackPointgetRollbackPoints () const
 
void rollback (const std::vector< RollbackPoint > &rollbackPoints) const
 
bool isGovernorAvailable (Governor governor) const
 
virtual bool isBoostingSupported () const =0
 
virtual bool isBoostingEnabled () const =0
 
virtual void enableBoosting () const =0
 
virtual void disableBoosting () const =0
 

Static Public Member Functions

static std::string getGovernorNameFromGovernor (Governor governor)
 
static Governor getGovernorFromGovernorName (const std::string &governorName)
 

Static Protected Member Functions

static std::vector
< topology::VirtualCore * > 
filterVirtualCores (const std::vector< topology::VirtualCore * > &virtualCores, const std::vector< topology::VirtualCoreId > &identifiers)
 

Member Function Documentation

virtual void mammut::cpufreq::CpuFreq::disableBoosting ( ) const
pure virtual

Disabled frequency boosting.

virtual void mammut::cpufreq::CpuFreq::enableBoosting ( ) const
pure virtual

Enables frequency boosting.

static std::vector<topology::VirtualCore*> mammut::cpufreq::CpuFreq::filterVirtualCores ( const std::vector< topology::VirtualCore * > &  virtualCores,
const std::vector< topology::VirtualCoreId > &  identifiers 
)
staticprotected

From a given set of virtual cores, returns only those with specified identifiers.

Parameters
virtualCoresThe set of virtual cores.
identifiersThe identifiers of the virtual cores we need.
Returns
A set of virtual cores with the specified identifiers.
Domain* mammut::cpufreq::CpuFreq::getDomain ( const topology::VirtualCore virtualCore) const

Gets the domain of a specified virtual core.

Parameters
virtualCoreThe virtual core.
Returns
The domain of the virtual core.
virtual std::vector<Domain*> mammut::cpufreq::CpuFreq::getDomains ( ) const
pure virtual

Gets the domains division of the cores.

Returns
A vector of domains.
std::vector<Domain*> mammut::cpufreq::CpuFreq::getDomains ( const std::vector< topology::VirtualCore * > &  virtualCores) const

Given a set of virtual cores, returns the domains to which these virtual cores belong.

Parameters
virtualCoresThe set of virtual cores.
Returns
A vector of domains.
std::vector<Domain*> mammut::cpufreq::CpuFreq::getDomains ( const topology::PhysicalCore physicalCore) const

Given a physical core, returns the domains covered by the virtual cores of that physical core.

Parameters
physicalCoreThe physical core.
Returns
A vector of domains.
std::vector<Domain*> mammut::cpufreq::CpuFreq::getDomains ( const topology::Cpu cpu) const

Given a CPU, returns the domains covered by the virtual cores of that CPU.

Parameters
cpuThe CPU.
Returns
A vector of domains.
std::vector<Domain*> mammut::cpufreq::CpuFreq::getDomainsComplete ( const std::vector< topology::VirtualCore * > &  virtualCores) const

Given a set of virtual cores, returns the a vector of domains. The domains in this vector are only those who have all their virtual cores contained in the specified set. Accordingly, for each element D in the returned vector, D->getVirtualCores() will return a subset of virtualCores parameter. ATTENTION: There must be no duplicate virtual cores in virtualCores vector.

Parameters
virtualCoresThe set of virtual cores.
Returns
A vector of domains.
static Governor mammut::cpufreq::CpuFreq::getGovernorFromGovernorName ( const std::string &  governorName)
static

Returns the governor identifier starting from the name of the governor.

Parameters
governorNameThe name of the governor.
Returns
The identifier associated to governorName, or GOVERNOR_NUM if no association is present.
static std::string mammut::cpufreq::CpuFreq::getGovernorNameFromGovernor ( Governor  governor)
static

Returns the governor name associated to a specific identifier.

Parameters
governorThe identifier of the governor.
Returns
The governor name associated to governor.
std::vector<RollbackPoint> mammut::cpufreq::CpuFreq::getRollbackPoints ( ) const

Returns a rollback point for each domain. They can be used to bring the domains back to the point when this function is called.

Returns
A vector of rollback points.
virtual bool mammut::cpufreq::CpuFreq::isBoostingEnabled ( ) const
pure virtual

Returns true if frequency boosting is enabled.

Returns
True if frequency boosting is enabled, false otherwise.
virtual bool mammut::cpufreq::CpuFreq::isBoostingSupported ( ) const
pure virtual

Returns true if frequency boosting is supported.

Returns
True if frequency boosting is supported, false otherwise.
bool mammut::cpufreq::CpuFreq::isGovernorAvailable ( Governor  governor) const

Checks the availability of a specific governor.

Parameters
governorThe governor.
Returns
True if the governor is available for all domains, false otherwise.
void mammut::cpufreq::CpuFreq::rollback ( const std::vector< RollbackPoint > &  rollbackPoints) const

Bring the domains to the respective rollback points.

Parameters
rollbackPointsA vector of rollback points.

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