Processor Counter Monitor
Public Types | Public Member Functions | Friends | List of all members
ServerUncorePowerState Class Reference

Server uncore power counter state. More...

#include <cpucounters.h>

Inheritance diagram for ServerUncorePowerState:
UncoreCounterState

Public Types

enum  { maxControllers = 2, maxChannels = 8, maxXPILinks = 3, maxCounters = 4 }
 

Public Member Functions

int32 getPackageThermalHeadroom () const
 Returns current thermal headroom below TjMax.
 
- Public Member Functions inherited from UncoreCounterState
UncoreCounterStateoperator+= (const UncoreCounterState &o)
 

Friends

class PCM
 
template<class CounterStateType >
uint64 getQPIClocks (uint32 port, const CounterStateType &before, const CounterStateType &after)
 Returns QPI LL clock ticks. More...
 
template<class CounterStateType >
uint64 getQPIL0pTxCycles (uint32 port, const CounterStateType &before, const CounterStateType &after)
 Returns the number of QPI cycles in power saving half-lane mode. More...
 
template<class CounterStateType >
uint64 getQPIL1Cycles (uint32 port, const CounterStateType &before, const CounterStateType &after)
 Returns the number of QPI cycles in power saving shutdown mode. More...
 
template<class CounterStateType >
uint64 getDRAMClocks (uint32 channel, const CounterStateType &before, const CounterStateType &after)
 Returns DRAM clock ticks. More...
 
template<class CounterStateType >
uint64 getMCDRAMClocks (uint32 channel, const CounterStateType &before, const CounterStateType &after)
 Returns MCDRAM clock ticks. More...
 
template<class CounterStateType >
uint64 getMCCounter (uint32 channel, uint32 counter, const CounterStateType &before, const CounterStateType &after)
 Direct read of memory controller PMU counter (counter meaning depends on the programming: power/performance/etc) More...
 
template<class CounterStateType >
uint64 getM2MCounter (uint32 controller, uint32 counter, const CounterStateType &before, const CounterStateType &after)
 Direct read of Memory2Mesh controller PMU counter (counter meaning depends on the programming: power/performance/etc) More...
 
template<class CounterStateType >
uint64 getEDCCounter (uint32 channel, uint32 counter, const CounterStateType &before, const CounterStateType &after)
 Direct read of embedded DRAM memory controller counter (counter meaning depends on the programming: power/performance/etc) More...
 
template<class CounterStateType >
uint64 getPCUCounter (uint32 counter, const CounterStateType &before, const CounterStateType &after)
 Direct read of power control unit PMU counter (counter meaning depends on the programming: power/performance/etc) More...
 
template<class CounterStateType >
uint64 getConsumedEnergy (const CounterStateType &before, const CounterStateType &after)
 Returns energy consumed by processor, exclusing DRAM (measured in internal units) More...
 
template<class CounterStateType >
uint64 getDRAMConsumedEnergy (const CounterStateType &before, const CounterStateType &after)
 Returns energy consumed by DRAM (measured in internal units) More...
 
template<class CounterStateType >
uint64 getInvariantTSC (const CounterStateType &before, const CounterStateType &after)
 Computes number of invariant time stamp counter ticks. More...
 

Additional Inherited Members

- Protected Member Functions inherited from UncoreCounterState
void readAndAggregate (std::shared_ptr< SafeMsrHandle >)
 
- Protected Attributes inherited from UncoreCounterState
uint64 UncMCFullWrites
 
uint64 UncMCNormalReads
 
uint64 UncPMMWrites
 
uint64 UncPMMReads
 
uint64 UncEDCFullWrites
 
uint64 UncEDCNormalReads
 
uint64 UncMCIORequests
 
uint64 PackageEnergyStatus
 
uint64 DRAMEnergyStatus
 
uint64 TOROccupancyIAMiss
 
uint64 TORInsertsIAMiss
 
uint64 UncClocks
 
uint64 CStateResidency [PCM::MAX_C_STATE+1]
 

Detailed Description

Server uncore power counter state.

Friends And Related Function Documentation

template<class CounterStateType >
uint64 getConsumedEnergy ( const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns energy consumed by processor, exclusing DRAM (measured in internal units)

Parameters
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getDRAMClocks ( uint32  channel,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns DRAM clock ticks.

Parameters
channelDRAM channel number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getDRAMConsumedEnergy ( const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns energy consumed by DRAM (measured in internal units)

Parameters
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getEDCCounter ( uint32  channel,
uint32  counter,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Direct read of embedded DRAM memory controller counter (counter meaning depends on the programming: power/performance/etc)

Parameters
countercounter number
channelchannel number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getInvariantTSC ( const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Computes number of invariant time stamp counter ticks.

This counter counts irrespectively of C-, P- or T-states

Parameters
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
Returns
number of time stamp counter ticks
template<class CounterStateType >
uint64 getM2MCounter ( uint32  controller,
uint32  counter,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Direct read of Memory2Mesh controller PMU counter (counter meaning depends on the programming: power/performance/etc)

Parameters
countercounter number
controllercontroller number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getMCCounter ( uint32  channel,
uint32  counter,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Direct read of memory controller PMU counter (counter meaning depends on the programming: power/performance/etc)

Parameters
countercounter number
channelchannel number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getMCDRAMClocks ( uint32  channel,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns MCDRAM clock ticks.

Parameters
channelMCDRAM channel number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getPCUCounter ( uint32  counter,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Direct read of power control unit PMU counter (counter meaning depends on the programming: power/performance/etc)

Parameters
countercounter number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getQPIClocks ( uint32  port,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns QPI LL clock ticks.

Parameters
portQPI port number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getQPIL0pTxCycles ( uint32  port,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns the number of QPI cycles in power saving half-lane mode.

Parameters
portQPI port number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment
template<class CounterStateType >
uint64 getQPIL1Cycles ( uint32  port,
const CounterStateType &  before,
const CounterStateType &  after 
)
friend

Returns the number of QPI cycles in power saving shutdown mode.

Parameters
portQPI port number
beforeCPU counter state before the experiment
afterCPU counter state after the experiment

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