winnt.h (SYSTEM_CPU_SET_INFORMATION 結構)
GetSystemCpuSetInformation 會傳回此結構。 它用來列舉系統上的CPU集合,並判斷其目前狀態。
這是專為未來擴充而設計的可變大小結構。 逐一查看這個結構時,請使用size字段來判斷下一個結構的位移。
語法
typedef struct _SYSTEM_CPU_SET_INFORMATION {
DWORD Size;
CPU_SET_INFORMATION_TYPE Type;
union {
struct {
DWORD Id;
WORD Group;
BYTE LogicalProcessorIndex;
BYTE CoreIndex;
BYTE LastLevelCacheIndex;
BYTE NumaNodeIndex;
BYTE EfficiencyClass;
union {
BYTE AllFlags;
struct {
BYTE Parked : 1;
BYTE Allocated : 1;
BYTE AllocatedToTargetProcess : 1;
BYTE RealTime : 1;
BYTE ReservedFlags : 4;
} DUMMYSTRUCTNAME;
} DUMMYUNIONNAME2;
union {
DWORD Reserved;
BYTE SchedulingClass;
};
DWORD64 AllocationTag;
} CpuSet;
} DUMMYUNIONNAME;
} SYSTEM_CPU_SET_INFORMATION, *PSYSTEM_CPU_SET_INFORMATION;
成員
Size
這是此資訊結構的大小,以位元組為單位。
Type
這是結構中的資訊類型。 應用程式應該略過任何無法辨識類型的結構。
DUMMYUNIONNAME
DUMMYUNIONNAME.CpuSet
DUMMYUNIONNAME.CpuSet.Id
指定之 CPU 集的識別碼。 指定要親和的CPU集合清單時,此標識碼可以與 SetProcessDefaultCpuSets 或 SetThreadSelectedCpuSets 搭配使用。
DUMMYUNIONNAME.CpuSet.Group
指定 CPU 集合的處理器群組。 CpuSet 結構中的所有其他值都是相對於處理器群組。
DUMMYUNIONNAME.CpuSet.LogicalProcessorIndex
指定 CPU 集合之主處理器的群組相對索引。 除非 CPU 集合因熱或電源管理原因而停駐,或指派給另一個應用程式,否則線程會在其中一個 CPU 集合的主處理器上執行。 Group 和 LogicalProcessorIndex 欄位與PROCESSOR_NUMBER結構中找到的欄位相同,而且它們會對應至GROUP_AFFINITY結構的 [群組] 欄位和 [遮罩] 欄位。
DUMMYUNIONNAME.CpuSet.CoreIndex
群組相對值,指出哪個“Core” 具有CPU集合的主處理器。 此數目與相同群組中共用大量執行資源的所有 CPU 集合相同,例如支援同時多線程處理之單一核心上的不同硬體線程。
DUMMYUNIONNAME.CpuSet.LastLevelCacheIndex
群組相對值,指出哪些CPU集合會彼此共用至少一個層級的快取。 對於群組中與彼此共用快取的處理器上的所有CPU集合,這個值都相同。
DUMMYUNIONNAME.CpuSet.NumaNodeIndex
群組相對值,指出CPU集合所在的NUMA節點。 指定群組中位於相同NUMA節點上的所有CPU集合,對此欄位會有相同的值。
DUMMYUNIONNAME.CpuSet.EfficiencyClass
值,表示支援異質處理器的系統內建能源效率,例如ARM巨量 (。LITTLE 系統) 。 此欄位具有較高數值的 CPU 集合,具有較低值但較不具電源效率的主處理器。
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.AllFlags
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME.Parked
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME.Allocated
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME.AllocatedToTargetProcess
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME.RealTime
DUMMYUNIONNAME.CpuSet.DUMMYUNIONNAME2.DUMMYSTRUCTNAME.ReservedFlags
DUMMYUNIONNAME.CpuSet.Reserved
保留的。
DUMMYUNIONNAME.CpuSet.SchedulingClass
DUMMYUNIONNAME.CpuSet.AllocationTag
指定核心配置所使用的標記,以在不同元件中的線程之間傳達指定的配置 CPU 集。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2016 [傳統型應用程式 |UWP 應用程式] |
標頭 | winnt.h (包含 Windows.h) |