Win32_PhysicalMemory
TOC
Collapse the table of content
Expand the table of content

Win32_PhysicalMemory class

The Win32_PhysicalMemory WMI class represents a physical memory device located on a computer system and available to the 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.

Syntax

[Dynamic, Provider("CIMWin32"), UUID("{FAF76B93-798C-11D2-AAD1-006008C78BC7}"), AMENDMENT]
class Win32_PhysicalMemory : CIM_PhysicalMemory
{
  uint32   Attributes;
  string   BankLabel;
  uint64   Capacity;
  string   Caption;
  uint32   ConfiguredClockSpeed;
  uint32   ConfiguredVoltage;
  string   CreationClassName;
  uint16   DataWidth;
  string   Description;
  string   DeviceLocator;
  uint16   FormFactor;
  boolean  HotSwappable;
  datetime InstallDate;
  uint16   InterleaveDataDepth;
  uint32   InterleavePosition;
  string   Manufacturer;
  uint32   MaxVoltage;
  uint16   MemoryType;
  uint32   MinVoltage;
  string   Model;
  string   Name;
  string   OtherIdentifyingInfo;
  string   PartNumber;
  uint32   PositionInRow;
  boolean  PoweredOn;
  boolean  Removable;
  boolean  Replaceable;
  string   SerialNumber;
  string   SKU;
  uint32   SMBIOSMemoryType;
  uint32   Speed;
  string   Status;
  string   Tag;
  uint16   TotalWidth;
  uint16   TypeDetail;
  string   Version;
};

Members

The Win32_PhysicalMemory class has these types of members:

Properties

The Win32_PhysicalMemory class has these properties.

Attributes
Data type: uint32
Access type: Read-only

SMBIOS - Type 17 - Attributes. Represents the RANK.

This value comes from the Attributes member of the Memory Device 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 Technical Preview and Windows 10.

BankLabel
Data type: string
Access type: Read-only

Physically labeled bank where the memory is located.

Examples: "Bank 0", "Bank A"

This value comes from the Bank Locator member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalMemory.

Capacity
Data type: uint64
Access type: Read-only

Total capacity of the physical memory—in bytes.

This value comes from the Memory Device structure in the SMBIOS version information. For SMBIOS versions 2.1 thru 2.6 the value comes from the Size member. For SMBIOS version 2.7+ the value comes from the Extended Size member.

This property is inherited from CIM_PhysicalMemory.

For more information about using uint64 values in scripts, see Scripting in WMI.

Caption
Data type: string
Access type: Read-only

Short description of the object—a one-line string. This property is inherited from CIM_ManagedSystemElement.

ConfiguredClockSpeed
Data type: uint32
Access type: Read-only

The configured clock speed of the memory device, in megahertz (MHz), or 0, if the speed is unknown.

This value comes from the Configured Memory Clock Speed member of the Memory Device 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 Technical Preview and Windows 10.

ConfiguredVoltage
Data type: uint32
Access type: Read-only

Configured voltage for this device, in millivolts, or 0, if the voltage is unknown.

This value comes from the Configured voltage member of the Memory Device 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 Technical Preview and Windows 10.

CreationClassName
Data type: string
Access type: Read-only
Qualifiers: Key, MaxLen (256)

Name of the first concrete class that appears in the inheritance chain used in the creation of 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. This property is inherited from CIM_PhysicalElement.

DataWidth
Data type: uint16
Access type: Read-only

Data width of the physical memory—in bits. A data width of 0 (zero) and a total width of 8 (eight) indicates that the memory is used solely to provide error correction bits.

This value comes from the Data Width member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalMemory.

Description
Data type: string
Access type: Read-only

Description of an object. This property is inherited from CIM_ManagedSystemElement.

DeviceLocator
Data type: string
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Device Locator")

Label of the socket or circuit board that holds the memory.

Example: "SIMM 3"

This value comes from the Device Locator member of the Memory Device structure in the SMBIOS information.

FormFactor
Data type: uint16
Access type: Read-only

Implementation form factor for the chip.

This value comes from the Form Factor member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_Chip.

ValueMeaning
0

Unknown

1

Other

2

SIP

3

DIP

4

ZIP

5

SOJ

6

Proprietary

7

SIMM

8

DIMM

9

TSOP

10

PGA

11

RIMM

12

SODIMM

13

SRIMM

14

SMD

15

SSMP

16

QFP

17

TQFP

18

SOIC

19

LCC

20

PLCC

21

BGA

22

FPBGA

23

LGA

 

HotSwappable
Data type: boolean
Access type: Read-only

If TRUE, this physical media component can be replaced with a physically different but equivalent one while the containing package has the power applied. For example, a fan component may be designed to be hot-swapped. All components that can be hot-swapped are inherently removable and replaceable. This property is inherited from CIM_PhysicalComponent.

InstallDate
Data type: datetime
Access type: Read-only

Date and time the object is installed. This property does not need a value to indicate that the object is installed. This property is inherited from CIM_ManagedSystemElement.

InterleaveDataDepth
Data type: uint16
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 20|Interleaved Data Depth")

Unsigned 16-bit integer maximum number of consecutive rows of data that are accessed in a single interleaved transfer from the memory device. If the value is 0 (zero), the memory is not interleaved.

InterleavePosition
Data type: uint32
Access type: Read-only

Position of the physical memory in an interleave. For example, in a 2:1 interleave, a value of "1" indicates that the memory is in the "even" position. This property is inherited from CIM_PhysicalMemory.

ValueMeaning
0

Noninterleaved

1

First position

2

Second position

 

Manufacturer
Data type: string
Access type: Read-only

Name of the organization responsible for producing the physical element.

This value comes from the Manufacturer member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalElement.

MaxVoltage
Data type: uint32
Access type: Read-only

The maximum operating voltage for this device, in millivolts, or 0, if the voltage is unknown.

This value comes from the Maximum voltage member of the Memory Device 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 Technical Preview and Windows 10.

MemoryType
Data type: uint16
Access type: Read-only

Type of physical memory. This is a CIM value that is mapped to the SMBIOS value. The SMBIOSMemoryType property contains the raw SMBIOS memory type.

This value comes from the Memory Type member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalMemory.

Note  WMI may return Unknown for DDR2 and DDR3 memory types; this has to do with the SMBIOS that WMI reads. For more information, see the following KB article.
 
ValueMeaning
Unknown
0
Other
1
DRAM
2
Synchronous DRAM
3
Cache DRAM
4
EDO
5
EDRAM
6
VRAM
7
SRAM
8
RAM
9
ROM
10
Flash
11
EEPROM
12
FEPROM
13
EPROM
14
CDRAM
15
3DRAM
16
SDRAM
17
SGRAM
18
RDRAM
19
DDR
20
DDR2
21

May not be available; see note above.

DDR2
21

May not be available; see note above.

DDR2 FB-DIMM
22

May not be available; see note above.

DDR3
24

May not be available; see note above.

FBD2
25

 

MinVoltage
Data type: uint32
Access type: Read-only

The minimum operating voltage for this device, in millivolts, or 0, if the voltage is unknown.

This value comes from the Minimum voltage member of the Memory Device 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 Technical Preview and Windows 10.

Model
Data type: string
Access type: Read-only

Name for the physical element. This property is inherited from CIM_PhysicalElement.

Name
Data type: string
Access type: Read-only

Label for the object. When subclassed, the property can be overridden to be a key property. This property is inherited from CIM_ManagedSystemElement.

OtherIdentifyingInfo
Data type: string
Access type: Read-only

Additional data, beyond asset tag information, that can be used to identify a physical element. One example is bar code data associated with an element that also has an asset tag. If only bar code data is available and unique or able to be used as an element key, this property is be NULL and the bar code data is used as the class key in the tag property. This property is inherited from CIM_PhysicalElement.

PartNumber
Data type: string
Access type: Read-only

Part number assigned by the organization responsible for producing or manufacturing the physical element.

This value comes from the Part Number member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalElement.

PositionInRow
Data type: uint32
Access type: Read-only

Position of the physical memory in a row. For example, if it takes two 8-bit memory devices to form a 16-bit row, then a value of 2 (two) means that this memory is the second device—0 (zero) is an invalid value for this property. This property is inherited from CIM_PhysicalMemory.

PoweredOn
Data type: boolean
Access type: Read-only

If TRUE, the physical element is powered on. This property is inherited from CIM_PhysicalElement.

Removable
Data type: boolean
Access type: Read-only

If TRUE, a physical component is removable (if it is designed to be taken in and out of the physical container in which it is normally found, without impairing the function of the overall packaging). A component can still be removable if power must be "off" to perform the removal. If power can be "on" and the component removed, then the element is removable and can be hot-swapped. For example, an upgradable processor chip is removable. This property is inherited from CIM_PhysicalComponent.

Replaceable
Data type: boolean
Access type: Read-only

If TRUE, this physical media component can be replaced with a physically different one. For example, some computer systems allow the main processor chip to be upgraded to one of a higher clock rating. In this case, the processor is said to be replaceable. All removable components are inherently replaceable. This property is inherited from CIM_PhysicalComponent.

SerialNumber
Data type: string
Access type: Read-only

Manufacturer-allocated number to identify the physical element.

This value comes from the Serial Number member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalElement.

SKU
Data type: string
Access type: Read-only

Stock keeping unit number for the physical element. This property is inherited from CIM_PhysicalElement.

SMBIOSMemoryType
Data type: uint32
Access type: Read-only

The raw SMBIOS memory type. The value of the MemoryType property is a CIM value that is mapped to the SMBIOS value.

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 Technical Preview and Windows 10.

Speed
Data type: uint32
Access type: Read-only

Speed of the physical memory—in nanoseconds.

This value comes from the Speed member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalMemory.

Status
Data type: string
Access type: Read-only

Current status of the object. Various operational and nonoperational statuses can be defined. Operational statuses include: "OK", "Degraded", and "Pred Fail" (an element, such as a SMART-enabled hard disk drive, may be functioning properly but predicting a failure in the near future). Nonoperational statuses include: "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 online, yet the managed element is neither "OK" nor in one of the other states. This property is inherited from CIM_ManagedSystemElement.

Values include the following:

OK ("OK")
Error ("Error")
Degraded ("Degraded")
Unknown ("Unknown")
Pred Fail ("Pred Fail")
Starting ("Starting")
Stopping ("Stopping")
Service ("Service")
Stressed ("Stressed")
NonRecover ("NonRecover")
No Contact ("No Contact")
Lost Comm ("Lost Comm")
Tag
Data type: string
Access type: Read-only
Qualifiers: Key, MaxLen (256) , Override ("Tag") , MappingStrings ("WMI")

Unique identifier for the physical memory device that is represented by an instance of Win32_PhysicalMemory. This property is inherited from CIM_PhysicalElement.

Example: "Physical Memory 1"

TotalWidth
Data type: uint16
Access type: Read-only

Total width, in bits, of the physical memory, including check or error correction bits. If there are no error correction bits, the value in this property should match what is specified for the DataWidth property.

This value comes from the Total Width member of the Memory Device structure in the SMBIOS information.

This property is inherited from CIM_PhysicalMemory.

TypeDetail
Data type: uint16
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Type Detail") , BitValues ("Reserved", "Other", "Unknown", "Fast-paged", "Static column", "Pseudo-static", "RAMBUS", "Synchronous", "CMOS", "EDO", "Window DRAM", "Cache DRAM", "Non-volatile")

Type of physical memory represented.

This value comes from the Type Detail member of the Memory Device structure in the SMBIOS information.

Value (Dec/Hex)Meaning
1 (0x1)

Reserved

2 (0x2)

Other

4 (0x4)

Unknown

8 (0x8)

Fast-paged

16 (0x10)

Static column

32 (0x20)

Pseudo-static

64 (0x40)

RAMBUS

128 (0x80)

Synchronous

256 (0x100)

CMOS

512 (0x200)

EDO

1024 (0x400)

Window DRAM

2048 (0x800)

Cache DRAM

4096 (0x1000)

Nonvolatile

 

Version
Data type: string
Access type: Read-only

Version of the physical element. This property is inherited from CIM_PhysicalElement.

Remarks

The Win32_PhysicalMemory class is derived from CIM_PhysicalMemory.

Examples

The Get-ComputerInfo - Query Computer Info From Local/Remote Computers - (WMI) PowerShell sample on TechNet Gallery uses a number of calls to hardware and software, including Win32_PhysicalMemory, to display information about a local or remote system.

The Server Report PowerShell sample on TechNet gallery uses a number of calls to hardware and software, including Win32_PhysicalMemory, to gather server information and publish in Word document.

The following PowerShell code sample retrieves information regarding the physical memory of the local computer.


function get-WmiMemoryFormFactor {
param ([uint16] $char)

If ($char -ge 0 -and  $char  -le 22) {

switch ($char) {
0     {"00-Unknown"}
1     {"01-Other"}
2     {"02-SiP"}
3     {"03-DIP"}
4     {"04-ZIP"}
5     {"05-SOJ"}
6     {"06-Proprietary"}
7     {"07-SIMM"}
8     {"08-DIMM"}
9     {"09-TSOPO"}
10     {"10-PGA"}
11     {"11-RIM"}
12     {"12-SODIMM"}
13     {"13-SRIMM"}
14     {"14-SMD"}
15     {"15-SSMP"}
16     {"16-QFP"}
17     {"17-TQFP"}
18     {"18-SOIC"}
19     {"19-LCC"}
20     {"20-PLCC"}
21     {"21-FPGA"}
22     {"22-LGA"}
}
}

else {"{0} - undefined value" -f $char
}

Return
}

# Helper function to return memory Interleave  Position

function get-WmiInterleavePosition {
param ([uint32] $char)

If ($char -ge 0 -and  $char -le 2) {

switch ($char) {
0     {"00-Non-Interleaved"}
1     {"01-First Position"}
2     {"02-Second Position"}
}
}

else {"{0} - undefined value" -f $char
}

Return
}


# Helper function to return Memory Tupe
function get-WmiMemoryType {
param ([uint16] $char)

If ($char -ge 0 -and  $char  -le 20) {

switch ($char) {
0     {"00-Unknown"}
1     {"01-Other"}
2     {"02-DRAM"}
3     {"03-Synchronous DRAM"}
4     {"04-Cache DRAM"}
5     {"05-EDO"}
6     {"06-EDRAM"}
7     {"07-VRAM"}
8     {"08-SRAM"}
9     {"09-ROM"}
10     {"10-ROM"}
11     {"11-FLASH"}
12     {"12-EEPROM"}
13     {"13-FEPROM"}
14     {"14-EPROM"}
15     {"15-CDRAM"}
16     {"16-3DRAM"}
17     {"17-SDRAM"}
18     {"18-SGRAM"}
19     {"19-RDRAM"}
20     {"20-DDR"}
}

}

else {"{0} - undefined value" -f $char
}

Return
}


# Get the object
$memory = Get-WMIObject Win32_PhysicalMemory

#  Format and Print
"System has {0} memory sticks:" -f $memory.count

Foreach ($stick in $memory) {

# Do some conversions
$cap=$stick.capacity/1mb
$ff=get-WmiMemoryFormFactor($stick.FormFactor)
$ilp=get-WmiInterleavePosition($stick.InterleavePosition)
$mt=get-WMIMemoryType($stick.MemoryType)

# print details of each stick
"BankLabel            {0}"  -f $stick.banklabel
"Capacity (MB)        {0}"  -f $cap
"Caption              {0}"  -f $stick.Caption
"CreationClassName    {0}"  -f $stick.creationclassname
"DataWidth            {0}"  -f $stick.DataWidth
"Description          {0}"  -f $stick.Description
"DeviceLocator        {0}"  -f $stick.DeviceLocator
"FormFactor           {0}"  -f $ff
"HotSwappable         {0}"  -f $stick.HotSwappable
"InstallDate          {0}"  -f $stick.InstallDate
"InterleaveDataDepth  {0}"  -f $stick.InterleaveDataDepth
"InterleavePosition   {0}"  -f $ilp
"Manufacturer         {0}"  -f $stick.Manufacturer
"MemoryType           {0}"  -f $mt
"Model                {0}"  -f $stick.Model
"Name                 {0}"  -f $stick.Name
"OtherIdentifyingInfo {0}"  -f $stick.OtherIdentifyingInfo
"PartNumber           {0}"  -f $stick.PartNumber
"PositionInRow        {0}"  -f $stick.PositionInRow
"PoweredOn            {0}"  -f $stick.PoweredOn
"Removable            {0}"  -f $stick.Removable
"Replaceable          {0}"  -f $stick.Replaceable
"SerialNumber         {0}"  -f $stick.SerialNumber
"SKU                  {0}"  -f $stick.SKU 
"Speed                {0}"  -f $stick.Speed 
"Status               {0}"  -f $stick.Status
"Tag                  {0}"  -f $stick.Tag
"TotalWidth           {0}"  -f $stick.TotalWidth 
"TypeDetail           {0}"  -f $stick.TypeDetail
"Version              {0}"  -f $stick.Version
""
}
"-----"

Requirements

Minimum supported client

Windows Vista

Minimum supported server

Windows Server 2008

Namespace

Root\CIMV2

MOF

CIMWin32.mof

DLL

CIMWin32.dll

See also

CIM_PhysicalMemory
Computer System Hardware Classes

 

 

Show:
© 2016 Microsoft