// pep_x.h
typedef struct _PEP_PPM_QUERY_DOMAIN_INFO {
ULONG DomainId;
UCHAR CoordinationType;
BOOLEAN IdleProcessorsDiscounted;
BOOLEAN SchedulerDirectedTransitionsSupported;
BOOLEAN AffinitizePerfSet;
ULONG WorstCaseTransitionLatency;
ULONG WorstCaseTransitionOverhead;
} PEP_PPM_QUERY_DOMAIN_INFO, *PPEP_PPM_QUERY_DOMAIN_INFO;
View the official Windows Driver Kit DDI reference// pepfx.h
typedef struct _PEP_PPM_QUERY_DOMAIN_INFO {
ULONG DomainId;
UCHAR CoordinationType;
BOOLEAN IdleProcessorsDiscounted;
BOOLEAN SchedulerDirectedTransitionsSupported;
BOOLEAN AffinitizePerfSet;
ULONG WorstCaseTransitionLatency;
ULONG WorstCaseTransitionOverhead;
} PEP_PPM_QUERY_DOMAIN_INFO, *PPEP_PPM_QUERY_DOMAIN_INFO;
View the official Windows Driver Kit DDI referenceNo description available.
Used in the PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO notification that queries for information about a performance domain.
DomainIdOn input, the domain ID of the domain being queried.
CoordinationTypeOn output, indicates the coordination type of the performance domain. The possible values are:
If this notification is not supported, PROCESSOR_DOMAIN_COORDIANTION_SW_ALL coordination is used.
IdleProcessorsDiscountedOn output, and if HW-ALL coordination is used, this value is TRUE if the platform automatically ignores requests from idle processors as it determines the resolved performance level of the domain, FALSE if requests from idle processors continue to be honored. If PROCESSOR_DOMAIN_COORDIANTION_HW_ALL coordination is not used: this field is ignored.
SchedulerDirectedTransitionsSupportedOn output, this value is TRUE if the PEP supports the requirements of scheduler directed performance transitions for this domain, FALSE otherwise.
AffinitizePerfSetWorstCaseTransitionLatencyOn output, this value indicates the worst case latency for the processor to transition to a new performance state, measured from the time the OS issues the notification to the PEP to transition to a new performance level, to the time the processor is running at the new performance level, in 100ns units.
WorstCaseTransitionOverheadOn output, this value indicates the worst case overhead (PEP code execution time plus time the processor is not executing instructions) measured from the time the OS issues the notification to the PEP to transition to a new performance level, to the time the processor is running at the new performance level, in 100ns units.
Processor power management (PPM) notifications
Used in the PEP_NOTIFY_PPM_QUERY_DOMAIN_INFO notification that queries for information about a performance domain.
DomainIdOn input, the domain ID of the domain being queried.
CoordinationTypeOn output, indicates the coordination type of the performance domain. The possible values are:
If this notification is not supported, PROCESSOR_DOMAIN_COORDIANTION_SW_ALL coordination is used.
IdleProcessorsDiscountedOn output, and if HW-ALL coordination is used, this value is TRUE if the platform automatically ignores requests from idle processors as it determines the resolved performance level of the domain, FALSE if requests from idle processors continue to be honored. If PROCESSOR_DOMAIN_COORDIANTION_HW_ALL coordination is not used: this field is ignored.
SchedulerDirectedTransitionsSupportedOn output, this value is TRUE if the PEP supports the requirements of scheduler directed performance transitions for this domain, FALSE otherwise.
AffinitizePerfSetOn output, this value is TRUE if the PEP requires the PEP_NOTIFY_PPM_PERF_SET or PEP_NOTIFY_PPM_PERF_SET_STATE notification to execute on the processor changing frequency, or FALSE if the PEP allows these notifications to execute on any processor. If PROCESSOR_DOMAIN_COORDIANTION_SW_ANY coordination is used: the PEP_NOTIFY_PPM_PERF_SET or PEP_NOTIFY_PPM_PERF_SET_STATE notification will execute on a processor in the domain.
WorstCaseTransitionLatencyOn output, this value indicates the worst case latency for the processor to transition to a new performance state, measured from the time the OS issues the notification to the PEP to transition to a new performance level, to the time the processor is running at the new performance level, in 100ns units.
WorstCaseTransitionOverheadOn output, this value indicates the worst case overhead (PEP code execution time plus time the processor is not executing instructions) measured from the time the OS issues the notification to the PEP to transition to a new performance level, to the time the processor is running at the new performance level, in 100ns units.
Processor power management (PPM) notifications