PEP_PROCESSOR_FEEDBACK_COUNTER structure (pepfx.h)
The PEP_PROCESSOR_FEEDBACK_COUNTER structure describes a feedback counter to the operating system.
Syntax
typedef struct _PEP_PROCESSOR_FEEDBACK_COUNTER {
struct {
ULONG Affinitized : 1;
ULONG Type : 2;
ULONG Counter : 4;
ULONG DiscountIdle : 1;
ULONG Reserved : 24;
};
ULONG NominalRate;
} PEP_PROCESSOR_FEEDBACK_COUNTER, *PPEP_PROCESSOR_FEEDBACK_COUNTER;
Members
Affinitized
Identifies the counter process affinity. If set to 1, the counter must be read while executing on the target processor, otherwise, it will be set to 0.
Type
Specifies the data type of the counter.
The processor feedback counter data types are:
Value | Meaning |
---|---|
PROCESSOR_FEEDBACK_TYPE_INSTANTANEOUS (0x00) | The feedback counter returns the instantaneous value of the property being counted. |
PROCESSOR_FEEDBACK_TYPE_RELATIVE (0x01) | The feedback counter returns two incrementing values: the nominal count, and the actual count. Nominal count increments at a fixed nominal rate. Actual count increments at a variable rate relative to the property being counted. When the property is incrementing at its nominal rate, the two values should increment at the same rate. To compute an average rate over a time period, the OS reads the counter once and the beginning of the period and once at the end and computes: |
Counter
Specifies the data the counter is providing.
The processor feedback counter types are:
Value | Meaning |
---|---|
|
The feedback counter returns the clock speed of the processor. The nominal rate is the nominal clock speed, in MHz. |
|
The feedback counter returns the current processor performance. The nominal rate is equivalent to the processor's NominalPerformance (see PEP_NOTIFY_PPM_QUERY_PERF_CAPABILITIES notification). |
DiscountIdle
Reserved
This member is reserved and should be set to zero.
NominalRate
Specifies the nominal rate of the counter.
Remarks
This structure
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported starting with Windows 10. |
Header | pepfx.h (include Pep_x.h) |