SYSTEM_LOGICAL_PROCESSOR_INFORMATION structure (winnt.h)
Describes the relationship between the specified processor set. This structure is used with the GetLogicalProcessorInformation function.
Syntax
typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
ULONG_PTR ProcessorMask;
LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
union {
struct {
BYTE Flags;
} ProcessorCore;
struct {
DWORD NodeNumber;
} NumaNode;
CACHE_DESCRIPTOR Cache;
ULONGLONG Reserved[2];
} DUMMYUNIONNAME;
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;
Members
ProcessorMask
The processor mask identifying the processors described by this structure. A processor mask is a bit vector in which each set bit represents an active processor in the relationship. At least one bit will be set.
On a system with more than 64 processors, the processor mask identifies processors in a single processor group.
Relationship
The relationship between the processors identified by the value of the ProcessorMask member. This member can be one of the following LOGICAL_PROCESSOR_RELATIONSHIP values.
Future versions of Windows may support additional values for the Relationship member.
DUMMYUNIONNAME
DUMMYUNIONNAME.ProcessorCore
This structure contains valid data only if the Relationship member is RelationProcessorCore.
DUMMYUNIONNAME.ProcessorCore.Flags
If the value of this member is 1, the logical processors identified by the value of the ProcessorMask member share functional units, as in Hyperthreading or SMT. Otherwise, the identified logical processors do not share functional units.
Windows Server 2003 and Windows XP Professional x64 Edition: This member is also 1 for cores that share a physical package. Therefore, to determine whether the processor supports multiple cores or hyperthreading on systems prior to Windows Vista, use the CPUID instruction.
DUMMYUNIONNAME.NumaNode
This structure contains valid data only if the Relationship member is RelationNumaNode.
DUMMYUNIONNAME.NumaNode.NodeNumber
Identifies the NUMA node. The valid values of this parameter are 0 to the highest NUMA node number inclusive. A non-NUMA multiprocessor system will report that all processors belong to one NUMA node.
DUMMYUNIONNAME.Cache
A CACHE_DESCRIPTOR structure that identifies the characteristics of a particular cache. There is one record returned for each cache reported. Some or all caches may not be reported, depending on the mechanism used by the processor to identify its caches. Therefore, do not assume the absence of any particular caches. Caches are not necessarily shared among logical processors.
This structure contains valid data only if the Relationship member is RelationCache.
Windows Server 2003: This member is not supported until Windows Server 2003 with SP1 and Windows XP Professional x64 Edition.
DUMMYUNIONNAME.Reserved[2]
Reserved. Do not use.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista, Windows XP Professional x64 Edition [desktop apps only] |
Minimum supported server | Windows Server 2003 [desktop apps only] |
Header | winnt.h (include Windows.h) |
See also
GetLogicalProcessorInformation
GetLogicalProcessorInformationEx