Linux: Check Ram Speed and Type

Posted on in Categories , , , , , , , , last updated October 31, 2016

How do I check RAM speed and type (line DDR or DDR2 or DDR3 or DDR4) without opening my computer? I need to purchase RAM and I need to know the exact speed and type installed. How do I find out ram information from a shell prompt?

You need to use biosdecode command line utility. Dmidecode is a tool or dumping a computer’s DMI (some say SMBIOS) table contents in a human-readable format. The output contains a description of the system’s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. This command works on Linux, UNIX and *BSD based computers.

How to check ram speed and type on Linux or Unix-like system:

  1. Open the terminal app or log in using ssh.
  2. Type the “sudo dmidecode --type 17” command.
  3. Look out for “Type:” line in the output for ram type and “Speed:” for ram speed.

See Linux Ram Speed

Examples

Open a shell prompt and type the following command as root user:
$ sudo dmidecode --type 17
OR
$ sudo dmidecode --type 17 | more
Sample output:

# dmidecode 2.9
SMBIOS 2.4 present.

Handle 0x0018, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0017
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 2048 MB
        Form Factor: DIMM
        Set: None
        Locator: J6H1
        Bank Locator: CHAN A DIMM 0
        Type: DDR2
        Type Detail: Synchronous
        Speed: 800 MHz (1.2 ns)
        Manufacturer: 0x2CFFFFFFFFFFFFFF
        Serial Number: 0x00000000
        Asset Tag: Unknown
        Part Number: 0x5A494F4E203830302D3247422D413131382D

Handle 0x001A, DMI type 17, 27 bytes
Memory Device
        Array Handle: 0x0017
        Error Information Handle: Not Provided
        Total Width: Unknown
        Data Width: Unknown
        Size: No Module Installed
        Form Factor: DIMM
        Set: None
        Locator: J6H2
        Bank Locator: CHAN A DIMM 1
        Type: DDR2
        Type Detail: None
        Speed: Unknown
        Manufacturer: NO DIMM
        Serial Number: NO DIMM
        Asset Tag: NO DIMM
        Part Number: NO DIMM

You can just grep speed and skip all other the details using the following syntax:

dmidecode --type 17  | grep -i speed

Sample outputs:

	Speed: 1333 MHz (0.8 ns)
	Speed: 1333 MHz (0.8 ns)

Say hello to lshw

You can use the following command too:
$ sudo lshw -short -C memory
Sample outputs:

/0/0                            memory         64KiB BIOS
/0/55/45                        memory         1MiB L2 cache
/0/55/46                        memory         256KiB L1 cache
/0/55/47                        memory         8MiB L3 cache
/0/48                           memory         32GiB System Memory
/0/48/0                         memory         8GiB SODIMM DDR3 Synchronous 1600 MHz (0.6 ns)
/0/48/1                         memory         8GiB SODIMM DDR3 Synchronous 1600 MHz (0.6 ns)
/0/48/2                         memory         8GiB SODIMM DDR3 Synchronous 1600 MHz (0.6 ns)
/0/48/3                         memory         8GiB SODIMM DDR3 Synchronous 1600 MHz (0.6 ns)
See also:
  1. Linux Find The Speed Of Memory Through Software Command Prompt

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

37 comment

  1. lol; i like you’re site and your howto’s very very much. However, now I know I have to follow your stuff with an unknown type of ram, at an unknown speed. lol

    seriously, keep up the good work! :D

  2. I’m using Ubuntu 8.10 alpha 3 32bits.
    Using dmidecode I get the following results:
    [email protected]:~$ sudo dmidecode –type 17
    [sudo] password for jp:
    # dmidecode 2.9
    SMBIOS 2.2 present.

    Invalid entry length (0). DMI table is broken! Stop.

    [email protected]:~$ sudo dmidecode –type 17 | more
    # dmidecode 2.9
    SMBIOS 2.2 present.

    Invalid entry length (0). DMI table is broken! Stop.

    So, dmidecode is same version, SMBIOS is 2.2 instead of 2.4. And I didn’t get the information from dmidecode.

  3. Juan,

    You may need to report bug to Ubuntu team. There is not much we can do to fix this issue.

    Mark,

    ditto

  4. I get only this:

    # dmidecode 2.9
    SMBIOS 2.3 present.

    and no more info!
    Tried both commands.
    How can i get info like size, speed, type etc. ?

  5. sajmon,

    You can try using the following command combination and see if that works:

    dmidecode |grep -A20 ^Memory

  6. I am using Fedora 9. 2.6.25.14-108.fc9.i686
    Intel(R) Pentium(R) 4 CPU 3.00GHz
    Here is the dmidecode –type 17 output.
    No type and speed info.

    # dmidecode 2.9
    SMBIOS 2.3 present.

    Handle 0x0028, DMI type 17, 27 bytes
    Memory Device
    Array Handle: 0x0027
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: A0
    Bank Locator: Bank0/1
    Type: Unknown
    Type Detail: None
    Speed: Unknown
    Manufacturer: None
    Serial Number: None
    Asset Tag: None
    Part Number: None

    Handle 0x0029, DMI type 17, 27 bytes
    Memory Device
    Array Handle: 0x0027
    Error Information Handle: Not Provided
    Total Width: Unknown
    Data Width: Unknown
    Size: No Module Installed
    Form Factor: DIMM
    Set: None
    Locator: A1
    Bank Locator: Bank2/3
    Type: Unknown
    Type Detail: None
    Speed: Unknown
    Manufacturer: None
    Serial Number: None
    Asset Tag: None
    Part Number: None

    Handle 0x002A, DMI type 17, 27 bytes
    Memory Device
    Array Handle: 0x0027
    Error Information Handle: Not Provided
    Total Width: 64 bits
    Data Width: 64 bits
    Size: 1024 MB
    Form Factor: DIMM
    Set: None
    Locator: A2
    Bank Locator: Bank4/5
    Type: Unknown
    Type Detail: None
    Speed: Unknown
    Manufacturer: None
    Serial Number: None
    Asset Tag: None
    Part Number: None

    Handle 0x002B, DMI type 17, 27 bytes
    Memory Device
    Array Handle: 0x0027
    Error Information Handle: Not Provided
    Total Width: Unknown
    Data Width: Unknown
    Size: No Module Installed
    Form Factor: DIMM
    Set: None
    Locator: A3
    Bank Locator: Bank6/7
    Type: Unknown
    Type Detail: None
    Speed: Unknown
    Manufacturer: None
    Serial Number: None
    Asset Tag: None
    Part Number: None

    What will be the problem?

  7. Is this a white box?? That is what I can make out. Just try the following command to see the server model:

    dmidecode –type system
    or
    dmidecode –type 1

    1. You show the command you type as:

      [[email protected] bob]# demidecode –type 17
      bash: demidecode: command not found

      Yet the command should be:

      [[email protected] bob]# dmidecode –type 17

      Note the misspelling… the command is ‘dmidecode’ not ‘demidecode’.

  8. Hi
    Thanks for your good article
    Unfortunately dmidecode can not give correct information about my memory!!
    I have 4Gig DDR3 but dmideocde can not determine type my ram,and shoe “type= other” and “speed: 667Mhz”.
    But speed of my ram is 1333 MHz.

    Thanks for nay help or guidance

  9. Hi
    @munzli
    Thanks for your reply
    According to wikipedia http://en.wikipedia.org/wiki/Ddr3 :
    DDR3 modules can transfer data at a rate of 800–2133 MT/s using both rising and falling edges of a 400–1066 MHz I/O clock. Sometimes, a vendor may misleadingly advertise the I/O clock rate by labeling the MT/s as MHz.
    1333 is data rate not clock rate :P
    I addition wikipedia web page, there is one good table for comparing.

    Thanks again.

  10. Thanks for the tip! Knew this would be out there somewhere for a Linux machine since it can pretty much tell you every thing you want to know about your equipment. Glad there are people to pass on help.

  11. 1333MHz PC3-1066 DDR3 DIMM Desktop Memory KVR1333D3N9K2/4G (Electronics) I scuuessfclly paired these sticks with Kingston KVR1333D3K2/4GR from another retailer in a dual-channel RAM configuration. So that makes a total of 4 sticks, 8 GB. In order to take advantage of this much memory, I’m running a 64-bit operating system (as opposed to a 32-bit one). These are DDR3 memory sticks, so be sure you have an AM3 motherboard if you like AMD processors, or whatever on the Intel side handles DDR3 if you go for Intel processors.

  12. I typed: sudo dmidecode –type 17

    and received information that the speed of my RAM is unknown. Here is the output:

    # dmidecode 2.9
    SMBIOS 2.3 present.
    
    Handle 0x003B, DMI type 17, 27 bytes
    Memory Device
    	Array Handle: 0x0039
    	Error Information Handle: Not Provided
    	Total Width: 64 bits
    	Data Width: 64 bits
    	Size: 512 MB
    	Form Factor: DIMM
    	Set: None
    	Locator: DIMM0
    	Bank Locator: BANK0
    	Type: DDR
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Manufacturer0
    	Serial Number: SerNum0
    	Asset Tag: AssetTagNum0
    	Part Number: PartNum0
    
    Handle 0x003D, DMI type 17, 27 bytes
    Memory Device
    	Array Handle: 0x0039
    	Error Information Handle: Not Provided
    	Total Width: Unknown
    	Data Width: Unknown
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: DIMM1
    	Bank Locator: BANK1
    	Type: Unknown
    	Type Detail: Unknown
    	Speed: Unknown
    	Manufacturer: Manufacturer1
    	Serial Number: SerNum1
    	Asset Tag: AssetTagNum1
    	Part Number: PartNum1
    
    Handle 0x003F, DMI type 17, 27 bytes
    Memory Device
    	Array Handle: 0x0039
    	Error Information Handle: Not Provided
    	Total Width: 64 bits
    	Data Width: 64 bits
    	Size: 512 MB
    	Form Factor: DIMM
    	Set: None
    	Locator: DIMM2
    	Bank Locator: BANK2
    	Type: DDR
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Manufacturer2
    	Serial Number: SerNum2
    	Asset Tag: AssetTagNum2
    	Part Number: PartNum2
    
    Handle 0x0041, DMI type 17, 27 bytes
    Memory Device
    	Array Handle: 0x0039
    	Error Information Handle: Not Provided
    	Total Width: 64 bits
    	Data Width: 64 bits
    	Size: 256 MB
    	Form Factor: DIMM
    	Set: None
    	Locator: DIMM3
    	Bank Locator: BANK3
    	Type: DDR
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Manufacturer3
    	Serial Number: SerNum3
    	Asset Tag: AssetTagNum3
    	Part Number: PartNum3
    

    Any ideas would be appreciated?

  13. The ram in one of my workstations shows:
    Total Width: 72 bits
    Data Width: 64 bits
    Type Detail: Synchronous Unbuffered (Unregistered)

    I imagine that the 72 vs 64 means it’s ECC but the type detail means “unregistered.”

    This seem right?

  14. [email protected]:~# dmidecode -t 17
    # dmidecode 2.11
    SMBIOS 2.7 present.
    
    Handle 0x002C, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x002A
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: 4096 MB
    	Form Factor: DIMM
    	Set: None
    	Locator: P1-DIMMA1
    	Bank Locator: Node0_Bank0
    	Type: DDR3
    	Type Detail: Registered (Buffered)
    	Speed: 1333 MHz
    	Manufacturer: Nanya             
    	Serial Number: C9542A26    
    	Asset Tag: Dimm0_AssetTag
    	Part Number: NT4GC72B8PG0N
    	Rank: 2
    	Configured Clock Speed: 1333 MHz
    
    Handle 0x002E, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x002A
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: 4096 MB
    	Form Factor: DIMM
    	Set: None
    	Locator: P1-DIMMA2
    	Bank Locator: Node0_Bank0
    	Type: DDR3
    	Type Detail: Registered (Buffered)
    	Speed: 1333 MHz
    	Manufacturer: Nanya             
    	Serial Number: AE5A2A29    
    	Asset Tag: Dimm1_AssetTag
    	Part Number: NT4GC72B8PG0N
    	Rank: 2
    	Configured Clock Speed: 1333 MHz
    
    Handle 0x0030, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x002A
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P1-DIMMA3
    	Bank Locator: Node0_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm2_Manufacturer
    	Serial Number: Dimm2_SerNum
    	Asset Tag: Dimm2_AssetTag
    	Part Number: Dimm2_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    Handle 0x0032, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x002A
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P1-DIMMB1
    	Bank Locator: Node0_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm3_Manufacturer
    	Serial Number: Dimm3_SerNum
    	Asset Tag: Dimm3_AssetTag
    	Part Number: Dimm3_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    Handle 0x0036, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x0034
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P2-DIMME1
    	Bank Locator: Node1_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm0_Manufacturer
    	Serial Number: Dimm0_SerNum
    	Asset Tag: Dimm0_AssetTag
    	Part Number: Dimm0_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    Handle 0x0038, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x0034
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P2-DIMME2
    	Bank Locator: Node1_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm1_Manufacturer
    	Serial Number: Dimm1_SerNum
    	Asset Tag: Dimm1_AssetTag
    	Part Number: Dimm1_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    Handle 0x003A, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x0034
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P2-DIMME3
    	Bank Locator: Node1_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm2_Manufacturer
    	Serial Number: Dimm2_SerNum
    	Asset Tag: Dimm2_AssetTag
    	Part Number: Dimm2_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    Handle 0x003C, DMI type 17, 34 bytes
    Memory Device
    	Array Handle: 0x0034
    	Error Information Handle: Not Provided
    	Total Width: 72 bits
    	Data Width: 64 bits
    	Size: No Module Installed
    	Form Factor: DIMM
    	Set: None
    	Locator: P2-DIMMF1
    	Bank Locator: Node1_Bank0
    	Type: Unknown
    	Type Detail: Synchronous
    	Speed: Unknown
    	Manufacturer: Dimm3_Manufacturer
    	Serial Number: Dimm3_SerNum
    	Asset Tag: Dimm3_AssetTag
    	Part Number: Dimm3_PartNum
    	Rank: Unknown
    	Configured Clock Speed: Unknown
    
    [email protected]:~#
  15. On SalixOS dmidecode as in the article but with type 16 gave me the maximum amount of RAM that could be installed, handy, as HP’s own support page had misleading info.

    Also, dmidecode > /home/usernamedude/Documents/dmi.txt writes a WHOLE LOT OF INFO to a text file in the given path.

    Thanks for the article, this was really helpful.

  16. CoreFreq shows in a console UI the DRAM CAS & others timings , but also its frequency and the Bus speed, all queried from the chipset.
    CoreFreq is on the

  17. dmidecode is notorious for being incorrect, it might be better know but historically it lied, a lot. But there’s a chance you can talk to the eeprom on the dimms directly by using decode-dimms. It’s in the i2c-tools package in Debian. You’ll need to load the eeprom module, but if you BIOS is cool it’ll pass the call through to the RAM itself and you can get the real info. If the BIOS isn’t cool, it’ll block the call and you won’t be able to talk to the chips :-/.

Comments are closed.