struct _PROC_PERF_CONSTRAINT { struct _PROC_PERF_CHECK_CONTEXT* CheckContext;/* 0x0 8 */ unsigned __int64 PerfContext;/* 0x8 8 */ enum _PROCESSOR_PRESENCE Presence;/* 0x10 4 */ unsigned long ProcessorId;/* 0x14 4 */ unsigned long PlatformCap;/* 0x18 4 */ unsigned long ThermalCap;/* 0x1c 4 */ unsigned long LimitReasons;/* 0x20 4 */ /* 4 bytes padding */ unsigned __int64 PlatformCapStartTime;/* 0x28 8 */ unsigned long ProcCap;/* 0x30 4 */ unsigned long ProcFloor;/* 0x34 4 */ unsigned long TargetPercent;/* 0x38 4 */ unsigned char EngageResponsivenessOverrides;/* 0x3c 1 */ unsigned char ResponsivenessChangeCount;/* 0x3d 1 */ /* 2 bytes padding */ /* ── cacheline 1 boundary (64 bytes) ── */ struct _PERF_CONTROL_STATE_SELECTION Selection;/* 0x40 80 */ /* ── cacheline 2 boundary (128 bytes) ── */ unsigned long DomainSelectionGeneration;/* 0x90 4 */ unsigned long CurrentFrequencyPercent;/* 0x94 4 */ unsigned long PreviousFrequency;/* 0x98 4 */ unsigned long PreviousPercent;/* 0x9c 4 */ unsigned long LatestFrequencyPercent;/* 0xa0 4 */ unsigned long LatestPerformancePercent;/* 0xa4 4 */ unsigned char Force;/* 0xa8 1 */ unsigned char UseQosUpdateLock;/* 0xa9 1 */ /* 6 bytes padding */ unsigned __int64 QosUpdateLock;/* 0xb0 8 */ unsigned long CurrentLogEntry;/* 0xb8 4 */ /* 4 bytes padding */ /* ── cacheline 3 boundary (192 bytes) ── */ struct _PPM_PERF_SNAPSHOT SnapshotLog[8];/* 0xc0 1024 */ /* ── cacheline 19 boundary (1216 bytes) ── */ unsigned long IncreasePerfCheckCount;/* 0x4c0 4 */ unsigned long DecreasePerfCheckCount;/* 0x4c4 4 */};size 1224 (0x4c8)27 members4 holes (16 bytes)padding 020 cachelines
Used in (2)