Requesting help to know RANK (single/dual) of my installed memory

Dear Rocky Linux Family members,

I have a system with
Intel Core i5 11400 Processor
Asus TUF Gaming B560-Plus WiFi Mother board
a single stick of Crucial memory 3600 C16. Specifically, this one

I want to know two things:

  1. whether this is Single Rank or Dual Rank. I suspect there is a command to check - dmidecode but I am not sure what to look for.

  2. I am about to add another strip of exact same type will there be any issue if there is a mixup between single and dual rank type RAM

Best regards,

Did you try to find info by

dmidecode --type 17

or
lshw -short -C memory

Thanks @linuxlover
I tried lshw -short -C memory

yields this

[root@galileo nmp]# lshw -short -C memory

H/W path Device Class Description
/0/0 memory 64KiB BIOS
/0/46 memory 16GiB System Memory
/0/46/0 memory [empty]
/0/46/1 memory [empty]
/0/46/2 memory [empty]
/0/46/3 memory 16GiB DIMM DDR4 Synchronous 2667 MHz (0.4 ns)
/0/56 memory 288KiB L1 cache
/0/57 memory 192KiB L1 cache
/0/58 memory 3MiB L2 cache
/0/59 memory 12MiB L3 cache
/0/100/14.2 memory RAM memory

I also tried dmidecode --type 17
yields this

dmidecode 3.2

Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

SMBIOS implementations newer than version 3.2.0 are not

fully supported by this version of dmidecode.

Handle 0x004C, DMI type 17, 92 bytes
Memory Device
Array Handle: 0x0046
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: Unknown
Set: None
Locator: Controller0-ChannelA-DIMM0
Bank Locator: BANK 0
Type: Unknown
Type Detail: None

Handle 0x004D, DMI type 17, 92 bytes
Memory Device
Array Handle: 0x0046
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: Unknown
Set: None
Locator: Controller0-ChannelA-DIMM1
Bank Locator: BANK 0
Type: Unknown
Type Detail: None

Handle 0x004E, DMI type 17, 92 bytes
Memory Device
Array Handle: 0x0046
Error Information Handle: Not Provided
Total Width: Unknown
Data Width: Unknown
Size: No Module Installed
Form Factor: Unknown
Set: None
Locator: Controller0-ChannelB-DIMM0
Bank Locator: BANK 1
Type: Unknown
Type Detail: None

Handle 0x004F, DMI type 17, 92 bytes
Memory Device
Array Handle: 0x0046
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 16 GB
Form Factor: DIMM
Set: None
Locator: Controller0-ChannelB-DIMM1
Bank Locator: BANK 1
Type: DDR4
Type Detail: Synchronous
Speed: 2667 MT/s
Manufacturer: Crucial Technology
Serial Number: E479E5D8
Asset Tag: 9876543210
Part Number: BL16G36C16U4W.M16FE1
Rank: 2
Configured Memory Speed: 3600 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Memory Technology: DRAM
Memory Operating Mode Capability: Volatile memory
Firmware Version: Not Specified
Module Manufacturer ID: Bank 6, Hex 0x9B
Module Product ID: Unknown
Memory Subsystem Controller Manufacturer ID: Unknown
Memory Subsystem Controller Product ID: Unknown
Non-Volatile Size: None
Volatile Size: 16 GB
Cache Size: None
Logical Size: None

Dear @linuxlover
I note Rank = 2 for my RAM. I suspect it is Dual Rank.
Is that correct?

Is there any way I can a-priori know this before purchasing the next RAM stick?

Please also let me know if having 1 Single Rank and other Dual Rank memory in my system can be troublesome or otherwise lead to instability.
Thanks for your help,

I don’t know about ranks, but apparently Crucial has said both “single” and “dual” about this memory: Crucial 32gb (2x16gb) cl16 3600 BL2K16G36C16U4B - Single Rank | Overclockers UK Forums

Dear @jlehtone
I hope you are doing well. Thanks for chiming in…
I am looking for BL16G36C16U4W which is a single RAM module (1 stick).
I think the link you shared mentions BL2K16G36C16U4B which apparently is a kit of two a different product altogether.
Best regards,

This might help:

Here is my lshw output:

        *-bank:0
             description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
             product: GR2666S464L19/16G
             vendor: Hitachi
             physical id: 0
             serial: 00000000
             slot: ChannelA-DIMM0
             size: 16GiB
             width: 64 bits
             clock: 2667MHz (0.4ns)
        *-bank:1
             description: SODIMM DDR4 Synchronous 2667 MHz (0.4 ns)
             product: GR2666S464L19/16G
             vendor: Hitachi
             physical id: 1
             serial: 00000000
             slot: ChannelB-DIMM0
             size: 16GiB
             width: 64 bits
             clock: 2667MHz (0.4ns)

so my memory shows a width of 64 bits - so single rank. So the width value is what you need to be looking at.

Also:

Best would be from lshw to get the same model memory as the one installed - as per the product number if you are unable to be sure of which one to get. Or alternatively, buy two of the same and pull the existing one out and use that elsewhere. Chances are the memory you have in it, can still be bought and then more chance of it working nicely together.

@iwalker
Hello Ian,
Thank you for your inputs.
I will put up the exact same module 16 GB 3600 CL16 as I have currently.
Best regards,

Do you still have the Manual for the mobo? There is always a section in there that tells you what memory modules are compatible with that mobo. On my current ws I think we started with a single 8 GB DIMM ie the memory module was marked as SIMM/DIMM. If you have ONLY 1 stick of RAM in there now I suspect you have the that type of RAM. So long as you populate the the board with the EXACT same RAM you can add single sticks until you fully populate the board.

Dear @desercat
Thanks, yes I ordered exact same type of RAM.
I have also found out that the part number which is BL16G36C16U4W.M16FE1
has .M16FE1 which indicates this is dual rank. My new RAM was ordered an hour back after confirmation that it is the very same part number

For Single Rank the corresponding extension is .M8FB1

:thinking: :thinking: !!! here is a GUESS: The M16FE1 means that there are 2 X 8 GB SIMMS = a total 16 GB; the M8FB1 there is for a SINGLE 8 GB SIMM = 8 GB. If you look at any producer of High Quality SIMMS – say GSkill, Corsair, et. al. – the TOTAL Amount of RAM in the kit. Some will expressly state 2x8GB = 16GB, 4x8 = 32 GB, etc. In your case I will hazard a guess that the “M” means either “Memory” or “Module” and that the number follows the “M” is the RAM total of the kit – 8, 16, 32 = 1 stick of 8GB RAM, 2 8GB of RAM, and 4 8GB of RAM. If you are using 32 GB SIMMS it would be 32, 64, 128.

I currently have 2 32 GB SIMMS = 64 GB of RAM and I still have 2 slots open so my mobo maxes out at 128 GB of RAM in my nearly complete NEW WS is getting polished; OTOH leopard. my current day-to-day WS running CentOS 7.9 is fully maxed out at 32 GB with 4 8 GB SIMMS that started out with a SINGLE 8 GB SIMM; as money came in if I could afford it, (I live on SS) I sank it into another 8 GB stick of the EXACT SAME RAM until I fully maxed the board. IF you have a SINGLE 8 GB SIMM and the the computer is running on that SINGLE 8 GB SIMM this may be listed in your Manual as functioning as either as a standalone SIMM. As a standalone it is critical which SLOT that SIMM goes in. You have A1 and B1, and A2 and B2. A1 and B1 are a pair, followed by A2 and B2 as a pair; OTOH there is memory that has be installed in pairs. In ocelot I have 2 GSkill F4-3600C18-32GTZN 32 GB SIMMS that – according to inxi (great utility program I have installed) are installed slots A2 and B2, leaving A1 and B1 open. Looking at the part number you can tell that they are 3600 MHz Speed, and that each is 32 GB in size and I think that the last letters stand for Neo (memory I bought because it is suppose to be optimized to run with Linux. That they happen to add a lot of Unicorn Barf – ie RGB – to the machine this is a side issue for me, the selling point of the memory is that it is suppose to be optimized for machines running Linux. Given I don’t have a tempered glass side window, the only time I see the Unicorn Barf is when I take the side panel off to run down some problem.

Looking at your memory Part No. – BL16G36C16U4W.M16FE1 or BL16G36C16U4W.M8FB1 – the G36 in the first half of the Part No. tells you that the speed is 3600 MHz, the C16 tells me your CAS Latency is 16 – the lower the CAS the Faster the Memory, – there are usually 4 numbers like 18-14-14-8 that allows OC to over clock the RAM. Most RAM right out of the box may run at say 2100 MHz, even if it rated at 3600 MHz, and I while I am NOT into OC the one and only thing will do is is bump it up to its stock rated speed of 3600 MHz; Crucial however is one of the few memory makers that when you put their memory in the machine it will run at its rated speed, and they will usually say so on the package somewhere – and the .M8 or .M16 at the beginning of the second half of the Part No. tells you the total RAM in the Kit – 8 GB or 16 GB. The Most Important Number when ordering RAM is the first half of the part number. As long as that matches you should be good to go. Remember there are several way to get to 8 GB or 16 GB: Ex. 4 x 2GB; 2x 4 GB, or 1 x 8 GB. Like wise 4 x 4GB; 2 x 8GB; or 1 x 16 GB. I seriously doubt the RAM manufacturer would use the almost EXACT same part number if you are trying buy a 1 X 8GB SIMM and they send you 2 4GB, or a kit of 4 4GB SIMMS if you are trying to get 2 8GB SIMMS. CHECK THE MEMORY MANUFACTURER’S WEBSITE FIRST BEFORE YOU BUY – THEY MAY USE SOME STRANGE METHOD TO IDENTIFYING THEIR RAM THAT I DID NOT THINK OF.

Truthfully I THINK as long as the first part of the Part Number is EXACTLY THE SAME, you PROBABLY have nothing to worry. Maybe some OC will correct me about “Single vs Dual Ranks”.

Hope this helps.

D’ Cat

No guessing should be necessary. The BL16G36C16U4W.M16FE1 and BL16G36C16U4W.M8FB1 appear unambiguous identifiers (while BL16G36C16U4W) is not. Deciphering information from vendor codes seems futile; getting identical module is what matters.

If you want to speculate, here are some setups:

  • One module, one rank, 8 GiB
  • Two modules on same channel, one rank and 8 GiB in each. 16 GiB total
  • One module, two ranks 8 GiB per rank. 16 GiB total
  • One module, one rank, 16 GiB

Accessing one 8 GiB rank is same, where-ever they are?
Accessing two 8 GiB ranks, whether in one or two modules. Is that same?
Accessing one 16 GiB rank vs two 8 GiB ranks. Is that same?

The safe bet is to use identical modules.

@desercat Thank you for your detailed reply including your system details and why you bought/set it up the way you did.

I have ordered the exact same spec - down to the .M16FE1 part.
BR,

Edit: the tip about inxi was useful! :smiley: thanks again.

Trivia Question: Since you bought the M16FE1 which means 16 GB, the question becomes was that for 1 16 GB stick of RAM or 2 8 GB stick of RAM? If 1 16 GB of RAM your board maxes out at 64 GB (assuming it can not use 32 GB SIMMS); if 2 8GB SIMMS it maxes out at 32 GB.

“Curiosity killed the Cat, but Satisfaction brought him back.”

Curiously yours,

D’ Cat

Hi @desercat @jlehtone @iwalker
I received the identical RAM and it is working as expected. Asus MObo setup even automatically switched on the XMP profile to 3603 MHz

Thanks for everyone’s contribution.
edited to acknowledge ian.

2 Likes

You also can look up the HCL for that HW server.

dmidecode -t ${memType}

-Sheng

What is the value of memType in your command and how it differs from the value that was already used in the OP?

Hi jlehtone,

What is the value of memType in your command
From the original question (single or double), I will use type 6 because it provides clear answer to me. Why type 6 ? I normally use man ${cmd} to have a general serach then google it.

how it differs from the value that was already used in the OP
I am not quite understand your question especially the term “OP”.
Could you rephrase the question again?
OP here means “Operation” ??

-Sheng

OP, as in “Original Post”, the first post on the thread, or original poster, the starter of the thread.
Although, rechecking, first post did not have dmidecode in it; first comment did and original poster did use that -t 17 later.

I’ve apparently never read all of ‘man dmidecode’ – got as far as keywords.
I have used ‘-t memory’, which apparently is {5, 6, 16, 17}, the early thread did show ‘-t 17’, and you prefer ‘-t 6’.
Are ‘6 Memory Module’ and ‘17 Memory Device’ showing same information in different formats?