Events
May 19, 6 PM - May 23, 12 AM
Calling all developers, creators, and AI innovators to join us in Seattle @Microsoft Build May 19-22.
Register todayThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
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.
[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;
};
The Win32_PhysicalMemory class has these types of members:
The Win32_PhysicalMemory class has these properties.
Attributes
Data type: uint32
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Attributes")
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 and Windows 10.
BankLabel
Data type: string
Access type: Read-only
Qualifiers: MaxLen (64), MappingStrings ("MIF.DMTF|Memory Device|002.4")
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.5"), Units ("bytes")
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
Qualifiers: MaxLen (64), DisplayName ("Caption")
Short description of the object—a one-line string.
This property is inherited from CIM_ManagedSystemElement.
ConfiguredClockSpeed
Data type: uint32
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Configured Memory Clock Speed")
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 and Windows 10.
ConfiguredVoltage
Data type: uint32
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Configured voltage")
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 and Windows 10.
CreationClassName
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.8"), Units ("bits")
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
Qualifiers: DisplayName ("Description")
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.6")
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.
(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
Qualifiers: MappingStrings ("MIF.DMTF|ComponentID|001.5"), DisplayName ("Install Date")
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device Mapped Addresses|001.7")
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.
0
Noninterleaved
1
First position
2
Second position
Manufacturer
Data type: string
Access type: Read-only
Qualifiers: MaxLen (256)
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
Qualifiers: MappingStrings ("SMBIOS|Type 17|Maximum voltage")
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 and Windows 10.
MemoryType
Data type: uint16
Access type: Read-only
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.9")
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.
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)
DDR2—May not be available.
DDR2 FB-DIMM (22)
DDR2—FB-DIMM,May not be available.
24
DDR3—May not be available.
25
FBD2
DDR4 (26)
MinVoltage
Data type: uint32
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 20|Minimum voltage")
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 and Windows 10.
Model
Data type: string
Access type: Read-only
Qualifiers: MaxLen (64)
Name for the physical element.
This property is inherited from CIM_PhysicalElement.
Name
Data type: string
Access type: Read-only
Qualifiers: DisplayName ("Name")
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
Qualifiers: MaxLen (256)
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device Mapped Addresses|001.6")
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
Qualifiers: MaxLen (64)
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
Qualifiers: MaxLen (64)
Stock keeping unit number for the physical element.
This property is inherited from CIM_PhysicalElement.
SMBIOSMemoryType
Data type: uint32
Access type: Read-only
Qualifiers: MappingStrings ("SMBIOS|Type 17|Memory_Type")
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 and Windows 10.
Speed
Data type: uint32
Access type: Read-only
Qualifiers: Units ("nanoseconds")
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
Qualifiers: MaxLen (10), DisplayName ("Status")
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.
The possible values are.
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
Qualifiers: MappingStrings ("MIF.DMTF|Memory Device|002.7"), Units ("bits")
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")
Type of physical memory represented.
This value comes from the Type Detail member of the Memory Device structure in the SMBIOS information.
Reserved (1)
Other (2)
Unknown (4)
Fast-paged (8)
Static column (16)
Pseudo-static (32)
RAMBUS (64)
Synchronous (128)
CMOS (256)
EDO (512)
Window DRAM (1024)
Cache DRAM (2048)
Non-volatile (4096)
Nonvolatile
Version
Data type: string
Access type: Read-only
Qualifiers: MaxLen (64)
Version of the physical element.
This property is inherited from CIM_PhysicalElement.
The Win32_PhysicalMemory class is derived from CIM_PhysicalMemory.
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
""
}
"-----"
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista |
Minimum supported server |
Windows Server 2008 |
Namespace |
Root\CIMV2 |
MOF |
|
DLL |
|
Events
May 19, 6 PM - May 23, 12 AM
Calling all developers, creators, and AI innovators to join us in Seattle @Microsoft Build May 19-22.
Register today