struct _PROC_PERF_DOMAIN { struct _LIST_ENTRY Link;/* 0x0 16 */ struct _PROC_PERF_CHECK_CONTEXT* Master;/* 0x10 8 */ struct _KAFFINITY_EX Members;/* 0x18 520 */ /* ── cacheline 8 boundary (512 bytes) ── */ unsigned __int64 DomainContext;/* 0x220 8 */ unsigned long ProcessorCount;/* 0x228 4 */ unsigned char EfficiencyClass;/* 0x22c 1 */ unsigned char NominalPerformanceClass;/* 0x22d 1 */ unsigned char PerformanceClass;/* 0x22e 1 */ /* 1 byte padding */ enum _PROCESSOR_PRESENCE Presence;/* 0x230 4 */ /* 4 bytes padding */ struct _PROC_PERF_CONSTRAINT* Processors;/* 0x238 8 */ /* ── cacheline 9 boundary (576 bytes) ── */ void (*GetFFHThrottleState)(unsigned __int64*);/* 0x240 8 */ void (*TimeWindowHandler)(unsigned __int64, unsigned long);/* 0x248 8 */ void (*BoostPolicyHandler)(unsigned __int64, unsigned long);/* 0x250 8 */ void (*BoostModeHandler)(unsigned __int64, unsigned long);/* 0x258 8 */ void (*AutonomousActivityWindowHandler)(unsigned __int64, unsigned long);/* 0x260 8 */ void (*AutonomousModeHandler)(unsigned __int64, unsigned long);/* 0x268 8 */ void (*ReinitializeHandler)(unsigned __int64);/* 0x270 8 */ unsigned long (*PerfTargetHandler)(unsigned __int64, unsigned long, unsigned long, unsigned long, unsigned long, unsigned __int64*);/* 0x278 8 */ /* ── cacheline 10 boundary (640 bytes) ── */ void (*PerfSelectionHandler)(unsigned __int64, unsigned __int64, struct _PERF_CONTROL_STATE_SELECTION*);/* 0x280 8 */ long (*PerfPriorityHandler)(unsigned __int64, unsigned long, unsigned long, unsigned __int64*);/* 0x288 8 */ void (*PerfControlHandler)(unsigned __int64, struct _PERF_CONTROL_STATE_SELECTION*, unsigned char, unsigned char);/* 0x290 8 */ void (*PerfControlHandlerHidden)(unsigned __int64, struct _PERF_CONTROL_STATE_SELECTION*, unsigned char, unsigned char);/* 0x298 8 */ void (*DomainPerfControlHandler)(unsigned __int64, struct _PERF_CONTROL_STATE_SELECTION*, unsigned char, unsigned char);/* 0x2a0 8 */ void (*PerfUpdateHwDebugData)(unsigned __int64, unsigned __int64, unsigned char);/* 0x2a8 8 */ unsigned long (*PerfQueryProcMeasurementCapabilities)(void);/* 0x2b0 8 */ long (*PerfQueryProcMeasurementValues)(unsigned long, unsigned long*, void*, unsigned long);/* 0x2b8 8 */ /* ── cacheline 11 boundary (704 bytes) ── */ unsigned long Id;/* 0x2c0 4 */ unsigned long MaxFrequency;/* 0x2c4 4 */ unsigned long NominalFrequency;/* 0x2c8 4 */ unsigned long MaxPercent;/* 0x2cc 4 */ unsigned long MinPerfPercent;/* 0x2d0 4 */ unsigned long MinThrottlePercent;/* 0x2d4 4 */ unsigned long AdvertizedMaximumFrequency;/* 0x2d8 4 */ /* 4 bytes padding */ unsigned __int64 MinimumRelativePerformance;/* 0x2e0 8 */ unsigned __int64 NominalRelativePerformance;/* 0x2e8 8 */ unsigned char NominalRelativePerformancePercent;/* 0x2f0 1 */ unsigned char Coordination;/* 0x2f1 1 */ unsigned char HardPlatformCap;/* 0x2f2 1 */ unsigned char AffinitizeControl;/* 0x2f3 1 */ unsigned char EfficientThrottle;/* 0x2f4 1 */ unsigned char AllowSchedulerDirectedPerfStates;/* 0x2f5 1 */ unsigned char InitiateAllProcessors;/* 0x2f6 1 */ unsigned char AllowVmPerfSelection;/* 0x2f7 1 */ unsigned char TurboRangeKnown;/* 0x2f8 1 */ /* 3 bytes padding */ unsigned long VmFrequencyStepMhz;/* 0x2fc 4 */ /* ── cacheline 12 boundary (768 bytes) ── */ unsigned long VmHighestFrequencyMhz;/* 0x300 4 */ unsigned long VmNominalFrequencyMhz;/* 0x304 4 */ unsigned long VmLowestFrequencyMhz;/* 0x308 4 */ unsigned long VmThrottlePriorityCount;/* 0x30c 4 */ unsigned long VmBoostPriorityCount;/* 0x310 4 */ unsigned char AutonomousMode;/* 0x314 1 */ unsigned char AutonomousCapability;/* 0x315 1 */ unsigned char ProvideGuidance;/* 0x316 1 */ unsigned char EppSupported;/* 0x317 1 */ unsigned long DesiredPercent;/* 0x318 4 */ unsigned long GuaranteedPercent;/* 0x31c 4 */ unsigned char EngageResponsivenessOverrides;/* 0x320 1 */ /* 3 bytes padding */ struct _PROC_PERF_QOS_CLASS_POLICY QosPolicies[7];/* 0x324 280 */ /* ── cacheline 16 boundary (1024 bytes) ── */ unsigned long QosDisableReasons[7];/* 0x43c 28 */ /* ── cacheline 17 boundary (1088 bytes) ── */ unsigned short QosEquivalencyMasks[7];/* 0x458 14 */ unsigned char QosSupported;/* 0x466 1 */ /* 1 byte padding */ volatile unsigned long SelectionGeneration;/* 0x468 4 */ /* 4 bytes padding */ struct _PERF_CONTROL_STATE_SELECTION QosSelection[7];/* 0x470 560 */ /* ── cacheline 26 boundary (1664 bytes) ── */ unsigned __int64 PerfChangeTime;/* 0x6a0 8 */ unsigned long PerfChangeIntervalCount;/* 0x6a8 4 */ unsigned char Force;/* 0x6ac 1 */ unsigned char Update;/* 0x6ad 1 */ unsigned char Apply;/* 0x6ae 1 */};size 1712 (0x6b0)68 members7 holes (20 bytes)padding 127 cachelines
Used in (1)