How shall I find out the frequency and type of my current RAM? My OS is Ubuntu 12.04.
8 Answers
This should do:
sudo lshw -short -C memory
-
6
-
14
-
8It should, and it does for me: on my computer, two of the lines read "4GiB DIMM DDR3 Synchronous 1333 MHz (0.8 ns)" (corresponding to the two RAM slots where I have RAM installed). Did you look closely? Dec 15, 2013 at 20:09
-
1sudo lshw -C memory > info.txt Not sure, it won't display on my terminal, but if I pipe it to a file it shows. Dec 18, 2013 at 1:24
-
5This did not display the frequency for me in Ubuntu 15.04. Likely hardware dependent. Solution by Henrique worked though. Apr 21, 2015 at 17:30
Use the lshw
command with the memory
class:
$ sudo lshw -C memory
# Some things about firmware and caches
*-memory
description: System Memory
physical id: 13
slot: System board or motherboard
size: 8GiB
*-bank:0
description: DIMM [empty]
product: [Empty]
vendor: [Empty]
physical id: 0
serial: [Empty]
slot: ChannelA-DIMM0
*-bank:1
description: SODIMM DDR3 Synchronous 1600 MHz (0.6 ns)
product: M471B5273DH0-CK0
vendor: Samsung
physical id: 1
serial: 34A8C7AF
slot: ChannelA-DIMM1
size: 4GiB
width: 64 bits
clock: 1600MHz (0.6ns)
# More banks.
As you can see, I'm using DDR3 1600MHz RAM.
Another option is dmidecode
:
$ sudo dmidecode -t memory
# dmidecode 2.9
SMBIOS 2.5 present.
Handle 0x003B, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: Multi-bit ECC
Maximum Capacity: Unknown
Error Information Handle: Not Provided
Number Of Devices: 8
Handle 0x003D, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x003B
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 4096 MB
Form Factor: DIMM
Set: None
Locator: DIMM_A1
Bank Locator: NODE 0 CHANNEL 0 DIMM 0
Type: Other
Type Detail: Synchronous
Speed: 1067 MHz (0.9 ns)
Manufacturer: 0x0198
Serial Number: 0xB12A9593
Asset Tag: Unknown
Part Number: 9965426-037.A00LF
# more such devices
This is for a server with ECC memory (as can be seen from the Error Correction Type
field and the difference between Data Width
and Total Width
).
Both tools are dependencies of the ubuntu-standard
package and should be available by default on all Ubuntu systems. There used to be another tool called hwinfo
, which is no longer available for Ubuntu since 13.10.
-
For me too: DDR3 1600 MHz. So does that mean both modules are the same type and I'm getting best performance?– H3R3T1KAug 24, 2014 at 20:17
-
@arno Yes, as far as I can tell. There's also a recommendation that modules should be in parallel banks (0/2/4, 1/3/5, etc.) for best performance - but I don't know if that's myth or fact.– muruAug 24, 2014 at 20:23
-
I am getting this output:
Configured Memory Speed: 1600 MT/s
. Is this same as 1600 MHz? Jun 22, 2020 at 12:31 -
1@YogiKatba seems so (at least, looking at linustechtips.com/main/topic/462465-mts-mhz/…)– muruJun 22, 2020 at 12:32
I could only get this info with dmidecode
, but rather than grepping, it's cleaner to use the right type:
sudo dmidecode --type memory
-
1Good answer, and I think this is easier to read:
sudo dmidecode -t memory | less -N
– EricDec 15, 2016 at 12:14 -
This also shows information about the DIMMs being Registered or Unbuffered Dec 20, 2018 at 3:41
This will give you all information you may want, probably:
sudo dmidecode | grep -A 15 Memory
-
Yes it shows. Mine for exemple is shown as: Speed: 1333 MHz Just after Type Detail. Dec 15, 2013 at 19:44
-
dmidecode returns information from the bios... Maybe you have a problem with your bios... Don't know. Dec 15, 2013 at 20:12
-
This was the only command that shows the frequency of my generic DRAM– McLearyDec 23, 2015 at 12:32
-
Try Hard info, for install run in terminal : sudo apt-get install hardinfo
It has interface, and it's simple to use. )
-
1Doesn't work for me, "Memory SPD" stays empty, even after the
sudo modprobe eeprom
as adviced e.g. here. This is probably due to my Ubuntu having an old version, but prepare to jump through some hoops in the hope that it will work, is all I'm saying. Nov 7, 2020 at 13:35
💬 REST OF ANSWERS
The rest of methods don't always work, reporting the speed as unknown. Here's one way that never fails.
💿 REQUIRED SOFTWARE
Install i2c-tools.
🚄 MEMORY BANDWIDTH
Read the value from the RAM eeprom with:
sudo modprobe eeprom && decode-dimms | grep speed | rev | cut --delimiter=" " --fields=2,3 | rev; sudo modprobe --remove eeprom
The value is returned in MT/s.
🎡 MEMORY FREQUENCY
If you want the value in MHz just divide the previous result by the number of channels the RAM module has, which you can get with:
sudo modprobe eeprom && decode-dimms | grep Ranks | rev | cut --delimiter=" " --fields=1 | rev; sudo modprobe --remove eeprom
🧩 MISCONFIGURED MOTHERBOARD
Note this is the speed of the module, not the speed that the motherboard is configured and capable to use.
For checking if the speed is misconfigured in the motherboard access the BIOS or UEFI, as explained in your motherboard manual.
-
it's weird as you just said to get the bus clock (MHz/s) , i should divide the data rate (Mt/s) by two , but the output of
lshw -short -C memory
shows bus clock equal to thedmidecode -t memory
data rate which is in 1333MHz and 1333MT/s respectively Oct 2, 2021 at 7:43 -
@polendina What do you get if you do:
sudo modprobe eeprom && decode-dimms | grep Ranks | rev | cut --delimiter=" " --fields=1 | rev; sudo modprobe --remove eeprom
Oct 3, 2021 at 10:08 -
-
@polendina That means your RAM is single channel, while mine was dual channel. I have edited my response to be applicable to any amount of channels. Thanks for pointing this out 👍 Oct 4, 2021 at 0:05
Above answers are correct; I just wanted to add further by piping the output of command to grep for Type and speed.
sudo dmidecode --type memory | grep -m2 Type
FYI: T in Type must be capital.
This might give either Type: DDR4 OR Type: DDR3
for speed use
sudo dmidecode --type memory | grep -m1 Speed
FYI: -m option of grep is used to limit the number of lines; for example -m2 means 2 lines.
-
For me it outputs
Speed: Unknown
. I had to use-m4
to display one line per one ram slot. Now it shows the speeds. Nov 22, 2020 at 13:29
Most of these answers will just give you the nominal clock speed of the memory. It may not be the actual clock speed.
The canonical method is to boot Memtest or if you are so endowed, boot Windows and use CPU-Z.
You can trust BIOS, you can trust Memtest. There are an enormous number of low cost boxes fitted with 1333MHz DDR3 that is actually clocked at 1066MHz. Both DMI decode and LSHW may be deceptive.