The default reporting in System Center Configuration Manager (SCCM) does not track the Number of Cores and Number of Logical Processors for each processor.The Win32_Processor WMI class contains number of cores (NumberOfCores) and logical processors (NumberOfLogicalProcessors) for each processor. It displays a unique DeviceID for each physical process in the system. This information is only available in newer version of OS's like Vista, Windows 7, Windows 2008, etc. For older version of OS like windows XP and Windows 2003 hotfix are available from Microsoft to populate this information in WMI.
Windows XP SP2: http://support.microsoft.com/kb/936235
Windows 2003 SP1 or SP2: http://support.microsoft.com/kb/932370/en-us
The value for NumberOfLogicalProcessors will be higher than the value for NumberOfCores if the processor supports hyperthreading, which effectively splits a core into two logical processors. The challenge is that the reporting on Win32_Processor isn't enabled in the default sms_def.mof.
You can look at the information available in Win32_Processor WMI class using the following VB Script.
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor",,48)
Dim objItem 'as Win32_Processor
For Each objItem in colItems
WScript.Echo "AddressWidth: " & objItem.AddressWidth
WScript.Echo "Architecture: " & objItem.Architecture
WScript.Echo "Availability: " & objItem.Availability
WScript.Echo "Caption: " & objItem.Caption
WScript.Echo "ConfigManagerErrorCode: " & objItem.ConfigManagerErrorCode
WScript.Echo "ConfigManagerUserConfig: " & objItem.ConfigManagerUserConfig
WScript.Echo "CpuStatus: " & objItem.CpuStatus
WScript.Echo "CreationClassName: " & objItem.CreationClassName
WScript.Echo "CurrentClockSpeed: " & objItem.CurrentClockSpeed
WScript.Echo "CurrentVoltage: " & objItem.CurrentVoltage
WScript.Echo "DataWidth: " & objItem.DataWidth
WScript.Echo "Description: " & objItem.Description
WScript.Echo "DeviceID: " & objItem.DeviceID
WScript.Echo "ErrorCleared: " & objItem.ErrorCleared
WScript.Echo "ErrorDescription: " & objItem.ErrorDescription
WScript.Echo "ExtClock: " & objItem.ExtClock
WScript.Echo "Family: " & objItem.Family
WScript.Echo "InstallDate: " & objItem.InstallDate
WScript.Echo "L2CacheSize: " & objItem.L2CacheSize
WScript.Echo "L2CacheSpeed: " & objItem.L2CacheSpeed
WScript.Echo "L3CacheSize: " & objItem.L3CacheSize
WScript.Echo "L3CacheSpeed: " & objItem.L3CacheSpeed
WScript.Echo "LastErrorCode: " & objItem.LastErrorCode
WScript.Echo "Level: " & objItem.Level
WScript.Echo "LoadPercentage: " & objItem.LoadPercentage
WScript.Echo "Manufacturer: " & objItem.Manufacturer
WScript.Echo "MaxClockSpeed: " & objItem.MaxClockSpeed
WScript.Echo "Name: " & objItem.Name
WScript.Echo "NumberOfCores: " & objItem.NumberOfCores
WScript.Echo "NumberOfLogicalProcessors: " & objItem.NumberOfLogicalProcessors
WScript.Echo "OtherFamilyDescription: " & objItem.OtherFamilyDescription
WScript.Echo "PNPDeviceID: " & objItem.PNPDeviceID
WScript.Echo "PowerManagementCapabilities: " & objItem.PowerManagementCapabilities
WScript.Echo "PowerManagementSupported: " & objItem.PowerManagementSupported
WScript.Echo "ProcessorId: " & objItem.ProcessorId
WScript.Echo "ProcessorType: " & objItem.ProcessorType
WScript.Echo "Revision: " & objItem.Revision
WScript.Echo "Role: " & objItem.Role
WScript.Echo "SocketDesignation: " & objItem.SocketDesignation
WScript.Echo "Status: " & objItem.Status
WScript.Echo "StatusInfo: " & objItem.StatusInfo
WScript.Echo "Stepping: " & objItem.Stepping
WScript.Echo "SystemCreationClassName: " & objItem.SystemCreationClassName
WScript.Echo "SystemName: " & objItem.SystemName
WScript.Echo "UniqueId: " & objItem.UniqueId
WScript.Echo "UpgradeMethod: " & objItem.UpgradeMethod
WScript.Echo "Version: " & objItem.Version
WScript.Echo "VoltageCaps: " & objItem.VoltageCaps
WScript.Echo ""
Next
To enable this class reporting in SCCM, the guidelines to update sms_def.mof can be found at this MyITForum post. Aditional information about the Win32_Processors call can be found here.
1 comments:
did you perhaps have the update for Server 2003 and could send it to me?
Post a Comment