struct _PPM_PERF_STATES { unsigned long Count;/* 0x0 4 */ unsigned long MaxFrequency;/* 0x4 4 */ unsigned long PStateCap;/* 0x8 4 */ unsigned long TStateCap;/* 0xc 4 */ unsigned long MaxPerfState;/* 0x10 4 */ unsigned long MinPerfState;/* 0x14 4 */ unsigned long LowestPState;/* 0x18 4 */ unsigned long IncreaseTime;/* 0x1c 4 */ unsigned long DecreaseTime;/* 0x20 4 */ unsigned char BusyAdjThreshold;/* 0x24 1 */ unsigned char Reserved;/* 0x25 1 */ unsigned char ThrottleStatesOnly;/* 0x26 1 */ unsigned char PolicyType;/* 0x27 1 */ unsigned long TimerInterval;/* 0x28 4 */ union { unsigned long AsULONG;/* 0x2c 4 */ struct { unsigned long UsingHypervisor : 1;/* 0x2c:0 4 */ unsigned long NoDomainAccounting : 1;/* 0x2c:1 4 */ unsigned long IncreasePolicy : 2;/* 0x2c:2 4 */ unsigned long DecreasePolicy : 2;/* 0x2c:4 4 */ unsigned long Reserved : 26;/* 0x2c:6 4 */ };/* 0x2c 4 */ } Flags;/* 0x2c 4 */ unsigned __int64 TargetProcessors;/* 0x30 8 */ long (*PStateHandler)(unsigned __int64, unsigned __int64, unsigned __int64);/* 0x38 8 */ /* ── cacheline 1 boundary (64 bytes) ── */ unsigned __int64 PStateContext;/* 0x40 8 */ long (*TStateHandler)(unsigned __int64, unsigned __int64, unsigned __int64);/* 0x48 8 */ unsigned __int64 TStateContext;/* 0x50 8 */ unsigned long (*FeedbackHandler)(unsigned char);/* 0x58 8 */ struct _PPM_DIA_STATS* DiaStats;/* 0x60 8 */ unsigned long DiaStatsCount;/* 0x68 4 */ /* 4 bytes padding */ struct _PPM_PERF_STATE State[1];/* 0x70 40 */};size 152 (0x98)24 members1 hole (4 bytes)padding 03 cachelines
Used in (1)