Win32_Processor

The Win32_Processor class represents a device that is capable of interpreting a sequence of machine instructions on a Win32 computer system. On a multiprocessor machine, there will exist one instance of this class for each processor.

# Note: replace "*" with a comma-separated lists of properties to show only selected properties.

# displaying information in GridView:# (Note: Out-GridView can only display a maximum of 30 columns. Additional properties are not shown.)Get-WMIObject-ClassWin32_Processor|Select-Object-Property*|Out-GridView-Title"Win32_Processor"

Querying information remotely:

# connecting to a remote machine using current identity:$ComputerName='SomeServerNameOrIP'Get-WMIObject-ClassWin32_Processor-ComputerName$ComputerName

# using credentials:$ComputerName='SomeServerNameOrIP'$Username='mydomain\\myusername'

The availability and status of the device. For example, the Availability property indicates that the device is running and has full power (value=3), or is in a warning (4), test (5), degraded (10) or power save state (values 13-15 and 17). Regarding the power saving states, these are defined as follows: Value 13 (“Power Save – Unknown”) indicates that the device is known to be in a power save mode, but its exact status in this mode is unknown; 14 (“Power Save – Low Power Mode”) indicates that the device is in a power save state but still functioning, and may exhibit degraded performance; 15 (“Power Save – Standby”) describes that the device is not functioning but could be brought to full power ‘quickly’; and value 17 (“Power Save – Warning”) indicates that the device is in a warning state, though also in a power save mode.

The Caption property is a short textual description (one-line string) of the object.

ConfigManagerErrorCode

Data type UInt32

Indicates the Win32 Configuration Manager error code. The following values may be returned:

0 This device is working properly.

1 This device is not configured correctly.

2 Windows cannot load the driver for this device.

3 The driver for this device might be corrupted, or your system may be running low on memory or other resources.

4 This device is not working properly. One of its drivers or your registry might be corrupted.

5 The driver for this device needs a resource that Windows cannot manage.

6 The boot configuration for this device conflicts with other devices.

7 Cannot filter.

8 The driver loader for the device is missing.

9 This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly.

10 This device cannot start.

11 This device failed.

12 This device cannot find enough free resources that it can use.

13 Windows cannot verify this device’s resources.

14 This device cannot work properly until you restart your computer.

15 This device is not working properly because there is probably a re-enumeration problem.

16 Windows cannot identify all the resources this device uses.

17 This device is asking for an unknown resource type.

18 Reinstall the drivers for this device.

19 Your registry might be corrupted.

20 Failure using the VxD loader.

21 System failure: Try changing the driver for this device. If that does not work, see your hardware documentation. Windows is removing this device.

22 This device is disabled.

23 System failure: Try changing the driver for this device. If that doesn’t work, see your hardware documentation.

24 This device is not present, is not working properly, or does not have all its drivers installed.

25 Windows is still setting up this device.

26 Windows is still setting up this device.

27 This device does not have valid log configuration.

28 The drivers for this device are not installed.

29 This device is disabled because the firmware of the device did not give it the required resources.

30 This device is using an Interrupt Request (IRQ) resource that another device is using.

31 This device is not working properly because Windows cannot load the drivers required for this device.

$ConfigManagerErrorCode_ReturnValue=@{0='This device is working properly.'1='This device is not configured correctly.'2='Windows cannot load the driver for this device.'3='The driver for this device might be corrupted 4= or your system may be running low on memory or other resources.'

5='This device is not working properly. One of its drivers or your registry might be corrupted.'6='The driver for this device needs a resource that Windows cannot manage.'7='The boot configuration for this device conflicts with other devices.'8='Cannot filter.'9='The driver loader for the device is missing.'10='This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly.'11='This device cannot start.'12='This device failed.'13='This device cannot find enough free resources that it can use.'14='Windows cannot verify this device'sresources.'
15='Thisdevicecannotworkproperlyuntilyourestartyourcomputer.'
16='Thisdeviceisnotworkingproperlybecausethereisprobablyare-enumerationproblem.'
17='Windowscannotidentifyalltheresourcesthisdeviceuses.'
18='Thisdeviceisaskingforanunknownresourcetype.'
19='Reinstallthedriversforthisdevice.'
20='FailureusingtheVxDloader.'
21='Yourregistrymightbecorrupted.'
22='Systemfailure:Trychangingthedriverforthisdevice.Ifthatdoesnotwork23=seeyourhardwaredocumentation.Windowsisremovingthisdevice.'
24='Thisdeviceisdisabled.'
25='Systemfailure:Trychangingthedriverforthisdevice.Ifthatdoesn't work
26= see your hardware documentation.'27='This device is not present 28= is not working properly 29= or does not have all its drivers installed.'

30='Windows is still setting up this device.'31='Windows is still setting up this device.'}

ConfigManagerUserConfig

Data type Boolean

Indicates whether the device is using a user-defined configuration.

CpuStatus

Data type UInt16

The CpuStatus property specifies the current status of the processor. Changes in status arise from processor usage, not the physical condition of the processor.

CreationClassName

Data type String

CreationClassName indicates the name of the class or the subclass used in the creation of an instance. When used with the other key properties of this class, this property allows all instances of this class and its subclasses to be uniquely identified.

CurrentClockSpeed

Data type UInt32

The current speed (in MHz) of this processor.

CurrentVoltage

Data type UInt16

The CurrentVoltage specifies the voltage of the processor. bits 0-6 of the field contain the processor’s current voltage times 10. This value is only set when SMBIOS designates a voltage value. For specific values, see VoltageCaps.

The InstallDate property is datetime value indicating when the object was installed. A lack of a value does not indicate that the object is not installed.

L2CacheSize

Data type UInt32

The L2CacheSize property specifies the size of the processor’s Level 2 cache. A Level 2 cache is an external memory area that has a faster access times than the main RAM memory.

L2CacheSpeed

Data type UInt32

The L2CacheSpeed property specifies the clockspeed of the processor’s Level 2 cache. A Level 2 cache is an external memory area that has a faster access times than the main RAM memory.

L3CacheSize

Data type UInt32

The L3CacheSize property specifies the size of the processor’s Level 3 cache. A Level 3 cache is an external memory area that has a faster access times than the main RAM memory.

L3CacheSpeed

Data type UInt32

The L3CacheSpeed property specifies the clockspeed of the processor’s Level 3 cache. A Level 3 cache is an external memory area that has a faster access times than the main RAM memory.

LastErrorCode

Data type UInt32

LastErrorCode captures the last error code reported by the logical device.

Level

Data type UInt16

The Level property further defines the processor type. The value depends on the architecture of the processor.

LoadPercentage

Data type UInt16

The LoadPercentage property specifies each processor’s load capacity averaged over the last second. The term ‘processor loading’ refers to the total computing burden each processor carries at one time.

Manufacturer

Data type String

The Manufacturer property specifies the name of the processor’s manufacturer.

Example: GenuineSilicon

MaxClockSpeed

Data type UInt32

The maximum speed (in MHz) of this processor.

Name

Data type String

The Name property defines the label by which the object is known. When subclassed, the Name property can be overridden to be a Key property.

NumberOfCores

Data type UInt32

The NumberOfCores property contains a Processor’s total number of cores. e.g dual core machine will have NumberOfCores = 2.

NumberOfLogicalProcessors

Data type UInt32

The NumberOfLogicalProcessors property specifies the total number of logical processors.

OtherFamilyDescription

Data type String

A string describing the processor family type – used when the family property is set to 1 (“Other”). This string should be set to NULL when the family property is any value other than 1.

PNPDeviceID

Data type String

Indicates the Win32 Plug and Play device ID of the logical device. Example: *PNP030b

PowerManagementCapabilities

Data type UInt16

Indicates the specific power-related capabilities of the logical device. The array values, 0=”Unknown”, 1=”Not Supported” and 2=”Disabled” are self-explanatory. The value, 3=”Enabled” indicates that 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) describes that a device can change its power state based on usage or other criteria. “Power State Settable” (5) indicates that the SetPowerState method is supported. “Power Cycling Supported” (6) indicates that the SetPowerState method can be invoked with the PowerState input variable set to 5 (“Power Cycle”). “Timed Power On Supported” (7) indicates that the SetPowerState method can be invoked with the PowerState input variable set to 5 (“Power Cycle”) and the Time parameter set to a specific date and time, or interval, for power-on.

PowerManagementSupported

Data type Boolean

Boolean indicating that the Device can be power managed – ie, put into a power save state. This boolean does not indicate that power management features are currently enabled, or if enabled, what features are supported. Refer to the PowerManagementCapabilities array for this information. If this boolean is $false, the integer value 1, for the string, “Not Supported”, should be the only entry in the PowerManagementCapabilities array.

ProcessorId

Data type String

The ProcessorId property contains processor-specific information that describes the processor’s features. For x86 class CPUs, the field’s format depends on the processor’s support of the CPUID instruction. If the instruction is supported, the ProcessorId property contains two DWORD-formatted values. The first (offsets 08h-0Bh) is the EAX value returned by a CPUID instruction with input EAX set to 1. The second (offsets 0Ch-0Fh) is the EDX value returned by that instruction. Only the first two bytes of the ProcessorID property are significant (all others are set to 0) and contain (in WORD-format) the contents of the DX register at CPU reset.

The Revision property specifies the system’s architecture-dependent revision level. The meaning of this value depends on the architecture of the processor. It contains the same values as the “Version” member, but in a numerical format.

Role

Data type String

A free form string describing the role of the processor – for example, “Central Processor”‘ or “Math Processor”

The SocketDesignation property contains the type of chip socket used on the circuit.

Example: J202

Status

Data type String

The Status property is a string indicating the current status of the object. Various operational and non-operational statuses can be defined. Operational statuses are “OK”, “Degraded” and “Pred Fail”. “Pred Fail” indicates that an element may be functioning properly but predicting a failure in the near future. An example is a SMART-enabled hard drive. Non-operational statuses can also be specified. These are “Error”, “Starting”, “Stopping” and “Service”. The latter, “Service”, could apply during mirror-resilvering of a disk, reload of a user permissions list, or other administrative work. Not all such work is on-line, yet the managed element is neither “OK” nor in one of the other states.

StatusInfo is a string indicating whether the logical device is in an enabled (value = 3), disabled (value = 4) or some other (1) or unknown (2) state. If this property does not apply to the logical device, the value, 5 (“Not Applicable”), should be used.

The VoltageCaps property specifies the 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 zero. The socket is configurable if multiple bits are being set. For a range of voltages see CurrentVoltage. If the property is NULL, then the voltage capabilities are unknown.

SetPowerState defines the desired power state for a logical device and when a device should be put into that state. The desired power state is specified by setting the PowerState parameter to one of the following integer values: 1=”Full Power”, 2=”Power Save – Low Power Mode”, 3=”Power Save – Standby”, 4=”Power Save – Other”, 5=”Power Cycle” or 6=”Power Off”. The Time parameter (for all state changes, except 5, “Power Cycle”) indicates when the power state should be set, either as a regular date-time value or as an interval value (where the interval begins when the method invocation is received). When the PowerState parameter is equal to 5, “Power Cycle”, the Time parameter indicates when the device should power on again. Power off is immediate. SetPowerState should return 0 if successful, 1 if the specified PowerState and Time request is not supported, and some other value if any other error occurred. In a subclass, the set of possible return codes could be specified, using a ValueMap qualifier on the method. The strings to which the ValueMap contents are ‘translated’ may also be specified in the subclass as a Values array qualifier.

You have a question about WMI in general or this particular WMI Class? Then please visit our free forum: Help me with WMI. There are even more forums to assist you, so you may want to look at the full forum list to pick the best one.

Please use the comment form below to actively submit new content for this page. So if you found an error or have sample code showing this class in action, please share by using the comment form on the bottom of this page.

Community Content

You are cordially invited to add knowledge to this page. If you have sample code or additional information related to this WMI class, please share it. Use the comment form to send your information. We will edit and incorparate it into the reference library. Thank you!

Please do not use the comment form to submit questions. If you have questions or need assistance, visit our free forum: Help me with WMI.