structure SYSTEM_CPU_SET_INFORMATION (winnt.h)
Cette structure est retournée par GetSystemCpuSetInformation. Il est utilisé pour énumérer les ensembles de processeurs sur le système et déterminer leur état actuel.
Il s’agit d’une structure de taille variable conçue pour une expansion future. Lorsque vous effectuez une itération sur cette structure, utilisez le champ taille pour déterminer le décalage vers la structure suivante.
Syntaxe
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;
Membres
Size
Il s’agit de la taille, en octets, de cette structure d’informations.
Type
Il s’agit du type d’informations dans la structure. Les applications doivent ignorer toutes les structures avec des types non reconnus.
DUMMYUNIONNAME
DUMMYUNIONNAME.CpuSet
DUMMYUNIONNAME.CpuSet.Id
ID du jeu d’UC spécifié. Cet identificateur peut être utilisé avec SetProcessDefaultCpuSets ou SetThreadSelectedCpuSets lors de la spécification d’une liste de jeux d’UC à affinité.
DUMMYUNIONNAME.CpuSet.Group
Spécifie le groupe de processeurs de l’ensemble de processeurs. Toutes les autres valeurs de la structure CpuSet sont relatives au groupe de processeurs.
DUMMYUNIONNAME.CpuSet.LogicalProcessorIndex
Spécifie l’index relatif de groupe du processeur de base du jeu d’UC. À moins que l’ensemble de processeurs ne soit garé pour des raisons thermiques ou de gestion de l’alimentation ou affecté à une utilisation exclusive à une autre application, les threads s’exécutent sur le processeur de base de l’un de leurs ensembles de processeurs. Les champs Group et LogicalProcessorIndex sont identiques à ceux de la structure PROCESSOR_NUMBER et correspondent aux champs Group et Mask de la structure GROUP_AFFINITY.
DUMMYUNIONNAME.CpuSet.CoreIndex
Valeur relative du groupe indiquant quel « cœur » a le processeur de base de l’ensemble de processeurs. Ce nombre est le même pour tous les ensembles de processeurs du même groupe qui partagent des ressources d’exécution significatives entre eux, tels que différents threads matériels sur un seul cœur qui prend en charge le multithreading simultané.
DUMMYUNIONNAME.CpuSet.LastLevelCacheIndex
Valeur relative de groupe indiquant les ensembles d’UC qui partagent au moins un niveau de cache entre eux. Cette valeur est la même pour tous les ensembles de processeurs d’un groupe qui se trouvent sur des processeurs qui partagent le cache entre eux.
DUMMYUNIONNAME.CpuSet.NumaNodeIndex
Valeur relative du groupe indiquant le nœud NUMA sur lequel se trouve un ensemble de processeurs. Tous les ensembles de processeurs d’un groupe donné qui se trouvent sur le même nœud NUMA auront la même valeur pour ce champ.
DUMMYUNIONNAME.CpuSet.EfficiencyClass
Valeur indiquant l’efficacité énergétique intrinsèque d’un processeur pour les systèmes qui prennent en charge des processeurs hétérogènes (tels qu’ARM big). PETITS systèmes). Les ensembles de processeurs avec des valeurs numériques plus élevées de ce champ ont des processeurs de base qui sont plus rapides, mais moins économes en énergie que ceux avec des valeurs inférieures.
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
Réservé.
DUMMYUNIONNAME.CpuSet.SchedulingClass
DUMMYUNIONNAME.CpuSet.AllocationTag
Spécifie une balise utilisée par Core Allocation pour communiquer un jeu d’UC alloué donné entre des threads dans différents composants.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2016 [applications de bureau | Applications UWP] |
En-tête | winnt.h (inclure Windows.h) |