mammut::topology::PhysicalCore Class Referenceabstract
Inheritance diagram for mammut::topology::PhysicalCore:
mammut::topology::Unit

Public Member Functions

PhysicalCoreId getPhysicalCoreId () const
 
CpuId getCpuId () const
 
std::vector< VirtualCore * > getVirtualCores () const
 
VirtualCoregetVirtualCore (VirtualCoreId virtualCoreId) const
 
VirtualCoregetVirtualCore () const
 
virtual void maximizeUtilization () const =0
 
virtual void resetUtilization () const =0
 
bool isHotPluggable () const
 
bool isHotPlugged () const
 
void hotPlug () const
 
void hotUnplug () const
 

Protected Member Functions

 PhysicalCore (CpuId cpuId, PhysicalCoreId physicalCoreId, std::vector< VirtualCore * > virtualCores)
 

Protected Attributes

const CpuId _cpuId
 
const PhysicalCoreId _physicalCoreId
 
const std::vector< VirtualCore * > _virtualCores
 

Member Function Documentation

CpuId mammut::topology::PhysicalCore::getCpuId ( ) const

Returns the identifier of the CPU where this physical core is running.

Returns
The identifier of the CPU where this physical core is running.
PhysicalCoreId mammut::topology::PhysicalCore::getPhysicalCoreId ( ) const

Returns the identifier of this physical core. The identifier of this physical core.

VirtualCore* mammut::topology::PhysicalCore::getVirtualCore ( VirtualCoreId  virtualCoreId) const

Returns the virtual core with the given identifier, or NULL if it is not present on this physical core.

Parameters
virtualCoreIdThe identifier of the virtual core.
Returns
The virtual core with the given identifier, or NULL if it is not present on this physical core.
VirtualCore* mammut::topology::PhysicalCore::getVirtualCore ( ) const

Returns a virtual core belonging to this physical core, or NULL if it is not present.

Returns
A virtual core belonging to this physical core, or NULL if it is not present.
std::vector<VirtualCore*> mammut::topology::PhysicalCore::getVirtualCores ( ) const

Returns the virtual cores associated to this physical core.

Returns
The virtual cores associated to this physical core.
void mammut::topology::PhysicalCore::hotPlug ( ) const

Hotplugs this physical core. If this core is not hot-pluggable, nothing is done.

void mammut::topology::PhysicalCore::hotUnplug ( ) const

Hotunplugs this physical core. If this core is not hot-pluggable, nothing is done.

bool mammut::topology::PhysicalCore::isHotPluggable ( ) const

Returns true if this physical core is hot-pluggable (i.e. if all its virtual cores are hot-pluggable).

Returns
True if this physical core is hot-pluggable, false otherwise.
bool mammut::topology::PhysicalCore::isHotPlugged ( ) const

Returns true if this physical core is hot plugged (i.e. if all its virtual cores are hot plugged).

Returns
True if this physical core is hot plugged or if hotplug is not supported, false otherwise.
virtual void mammut::topology::PhysicalCore::maximizeUtilization ( ) const
pure virtual

Bring the utilization of this physical core to 100% until resetUtilization() is called.

Implements mammut::topology::Unit.

virtual void mammut::topology::PhysicalCore::resetUtilization ( ) const
pure virtual

Resets the utilization of this physical core.

Implements mammut::topology::Unit.


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