The Win32_ProcessorWMI class represents a device that can interpret a sequence of instructions on a computer running on a Windows operating system.
The following syntax is simplified from Managed Object Format (MOF) code and includes all of the inherited properties. Properties are listed in alphabetic order, not MOF order.
This value comes from the Asset Tag member of the Processor Information structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
This value comes from the Processor Characteristics member of the Processor Information structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
Current status of the processor. Status changes indicate processor usage, but not the physical condition of the processor.
This value comes from the Status member of the Processor Information structure in the SMBIOS information.
Unknown (0)
CPU Enabled (1)
CPU Disabled by User via BIOS Setup (2)
CPU Disabled By BIOS (POST Error) (3)
CPU is Idle (4)
Reserved (5)
Reserved (6)
Other (7)
CreationClassName
Data type: string
Access type: Read-only
Qualifiers: [CIM_Key][2]
Name of the first concrete class that appears in the inheritance chain used to create an instance. When used with the other key properties of the class, the property allows all instances of this class and its subclasses to be identified uniquely.
Current speed of the processor, in MHz.
This value comes from the Current Speed member of the Processor Information structure in the SMBIOS information.
Voltage of the processor. If the eighth bit is set, bits 0-6 contain the voltage multiplied by 10. If the eighth bit is not set, then the bit setting in VoltageCaps represents the voltage value. CurrentVoltage is only set when SMBIOS designates a voltage value.
Example: Value for a processor voltage of 1.8 volts is 0x12 (1.8 x 10).
This value comes from the Voltage member of the Processor Information structure in the SMBIOS information.
DataWidth
Data type: uint16
Access type: Read-only
Qualifiers: [Units][1] ("bits")
On a 32-bit processor, the value is 32 and on a 64-bit processor it is 64.
This value comes from the Processor Information structure in the SMBIOS version information. For SMBIOS versions 2.0 thru 2.5 the value comes from the Processor Family member. For SMBIOS version 2.6+ the value comes from the Processor Family 2 member.
Date and time the object is installed. This property does not require a value to indicate that the object is installed. This property is inherited from [CIM_ManagedSystemElement](cim-managedsystemelement.md).
Size of the Level 2 processor cache. A Level 2 cache is an external memory area that has a faster access time than the main RAM memory.
This value comes from the L2 Cache Handle member of the Processor Information structure in the SMBIOS information.
Name of the processor manufacturer.
Example: A. Datum Corporation
This value comes from the Processor Manufacturer member of the Processor Information structure in the SMBIOS information.
Number of cores for the current instance of the processor. A core is a physical processor on the integrated circuit. For example, in a dual-core processor this property has a value of 2. For more information, see Remarks.
This value comes from the Processor Information structure in the SMBIOS version information. For SMBIOS versions 2.5 thru 2.9 the value comes from the Core Count member. For SMBIOS version 3.0+ the value comes from the Core Count 2 member.
This value comes from the Processor Information structure in the SMBIOS version information. For SMBIOS versions 2.5 thru 2.9 the value comes from the Core Enabled member. For SMBIOS version 3.0+ the value comes from the Core Enabled 2 member.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
NumberOfLogicalProcessors
Data type: uint32
Access type: Read-only
Qualifiers: [MappingStrings][1] ("WMI")
Number of logical processors for the current instance of the processor. For processors capable of hyperthreading, this value includes only the processors which have hyperthreading enabled. For more information, see Remarks.
Processor family type. Used when the Family property is set to 1, which means Other. This string should be set to NULL when the Family property is a value that is not 1.
The part number of this processor as set by the manufacturer.
This value comes from the Part Number member of the Processor Information structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
PNPDeviceID
Data type: string
Access type: Read-only
Qualifiers: [Schema][1] ("Win32")
Windows Plug and Play device identifier of the logical device.
This property is inherited from CIM_LogicalDevice.
Example: *PNP030b
PowerManagementCapabilities
Data type: uint16 array
Access type: Read-only
Array of the specific power-related capabilities of a logical device.
This property is inherited from CIM_LogicalDevice.
Unknown (0)
Not Supported (1)
Disabled (2)
Enabled (3)
The power management features are currently enabled but the exact feature set is unknown or the information is unavailable.
Power Saving Modes Entered Automatically (4)
The device can change its power state based on usage or other criteria.
Power State Settable (5)
The [SetPowerState](setpowerstate-method-in-class-cim-controller.md) method is supported. This method is found on the parent CIM_LogicalDevice class and can be implemented. For more information, see [Designing Managed Object Format (MOF) Classes][5].
Power Cycling Supported (6)
The [SetPowerState](setpowerstate-method-in-class-cim-controller.md) method can be invoked with the *PowerState* parameter set to 5 (Power Cycle).
Timed Power On Supported (7)
Timed Power-On Supported
The [SetPowerState](setpowerstate-method-in-class-cim-controller.md) method can be invoked with the *PowerState* parameter set to 5 (Power Cycle) and *Time* set to a specific date and time, or interval, for power-on.
PowerManagementSupported
Data type: boolean
Access type: Read-only
If TRUE, the power of the device can be managed, which means that it can be put into suspend mode, and so on. The property does not indicate that power management features are enabled, but it does indicate that the logical device power can be managed.
Processor information that describes the processor features. For an x86 class CPU, the field format depends on the processor support of the CPUID instruction. If the instruction is supported, the property contains 2 (two) DWORD formatted values. The first is an offset of 08h-0Bh, which is the EAX value that a CPUID instruction returns with input EAX set to 1. The second is an offset of 0Ch-0Fh, which is the EDX value that the instruction returns. Only the first two bytes of the property are significant and contain the contents of the DX register at CPU reset—all others are set to 0 (zero), and the contents are in DWORD format.
This value comes from the Processor ID member of the Processor Information structure in the SMBIOS information.
This value comes from the Processor Type member of the Processor Information structure in the SMBIOS information.
Other (1)
Unknown (2)
Central Processor (3)
Math Processor (4)
DSP Processor (5)
Video Processor (6)
Revision
Data type: uint16
Access type: Read-only
Qualifiers: [MappingStrings][1] ("WMI")
System revision level that depends on the architecture. The system revision level contains the same values as the Version property, but in a numerical format.
If True, the processor supports address translation extensions used for virtualization.
Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows 8 and Windows Server 2012.
The serial number of this processor This value is set by the manufacturer and normally not changeable.
This value comes from the Serial Number member of the Processor Information structure in the SMBIOS information.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
This value comes from the Processor Information structure in the SMBIOS version information. For SMBIOS versions 2.5 thru 2.9 the value comes from the Thread Count member. For SMBIOS version 3.0+ the value comes from the Thread Count 2 member.
Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows Server 2016 and Windows 10.
UniqueId
Data type: string
Access type: Read-only
Globally unique identifier for the processor. This identifier may only be unique within a processor family.
CPU socket information, including the method by which this processor can be upgraded, if upgrades are supported. This property is an integer enumeration.
This value comes from the Processor Upgrade member of the Processor Information structure in the SMBIOS information.
Processor revision number that depends on the architecture.
Example: Model 2, Stepping 12
VirtualizationFirmwareEnabled
Data type: boolean
Access type: Read-only
Qualifiers: [MappingStrings][1] ("WMI")
If True, the Firmware has enabled virtualization extensions.
Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows 8 and Windows Server 2012.
VMMonitorModeExtensions
Data type: boolean
Access type: Read-only
Qualifiers: [MappingStrings][1] ("WMI")
If True, the processor supports Intel or AMD Virtual Machine Monitor extensions.
Windows Server 2008 R2, Windows 7, Windows Server 2008 and Windows Vista: This property is not supported before Windows 8 and Windows Server 2012.
Voltage capabilities of the processor. Bits 0-3 of the field represent specific voltages that the processor socket can accept. All other bits should be set to 0 (zero). The socket is configurable if multiple bits are set. For more information about the actual voltage at which the processor is running, see CurrentVoltage. If the property is NULL, then the voltage capabilities are unknown.
5 (1)
5 volts
3.3 (2)
3.3 volts
2.9 (4)
2.9 volts
Remarks
On a multiprocessor computer, one instance of the Win32_Processor class exists for each processor.
To determine the total number of processor instances associated with a computer system object, use the Win32_ComputerSystemProcessor association class.
To determine if hyperthreading is enabled for the processor, compare NumberOfLogicalProcessors and NumberOfCores. If hyperthreading is enabled in the BIOS for the processor, then NumberOfCores is less than NumberOfLogicalProcessors. For example, a dual-processor system that contains two processors enabled for hyperthreading can run four threads or programs or simultaneously. In this case, NumberOfCores is 2 and NumberOfLogicalProcessors is 4.
The Win32_Processor class is derived from CIM_Processor.
Examples
The "Multithreaded System Asset Gathering with PowerShell" PowerShell sample uses a number of classes, including Win32_ComputerSystemProcessor, to retrieve data from a system.
The following VBScript code example retrieves data about the operating system version and the processor it is running on from Win32_Processor, Win32_ComputerSystem, and Win32_OperatingSystem. This example requires Windows Vista or later.
The following VBScript code example shows how to use Win32_Processor to determine the computer architecture.
Set objProc = GetObject("winmgmts:root\cimv2:Win32_Processor='cpu0'")
If objProc.Architecture = 0 Then
WScript.Echo "x86"
ElseIf objProc.Architecture = 6 Then
WScript.Echo "Itanium"
Else
WScript.Echo "Unknown"
End If
Requirements
Requirement
Value
Minimum supported client
Windows Vista
Minimum supported server
Windows Server 2008
Namespace
Root\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll
See also
[CIM_Processor](cim-processor.md)
[Computer System Hardware Classes](computer-system-hardware-classes.md)