Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

What difference does the 'Rank' of DIMMs make to server memory? For example, when looking at server configurations I see the following being offered for the same server:

2GB (1x2GB) Single Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM

2GB (1x2GB) Dual Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM

Given the option of Single Rank vs. Dual Rank or Dual Rank vs. Quad Rank is one always:

  • Faster?
  • Cheaper?
  • Higher Bandwidth?


Here's what IBM has to say (page 7) on the subject, at least regarding their HS22s:

It is important to ensure that DIMMs with appropriate number of ranks are populated in each channel for optimal performance. Whenever possible, it is recommended to use dual-rank DIMMs in the system. Dual-rank DIMMs offer better interleaving and hence better performance than single-rank DIMMs.

For instance, a system populated with six 2GB dual-rank DIMMs outperforms a system populated with six 2GB single-rank DIMMs by 7% for SPECjbb2005. Dual-rank DIMMs are also better than quad-rank DIMMs because quad-rank DIMMs will cause the memory speed to be down-clocked.

Another important guideline is to populate equivalent ranks per channel. For instance, mixing one single-rank DIMM and one dual-rank DIMM in a channel should be avoided.


Ultimately, the effect of the number of memory ranks is specific per server/chipset. For example, on IBM's x3850X5 servers more ranks is better (see §3.8.4):

With the Xeon 7500/6500 processors in the x3850 X5, having more ranks gives better performance. The reason is because of the addressing scheme, which can extend the pages across ranks thereby making the pages effectively larger and therefore more page-hit cycles.

share|improve this question

4 Answers 4

up vote 13 down vote accepted

Wikipedia has a fairly good explanation of rank (link). I'd say RamCity (a vendor for Kingston memory) has a more succint explanation on ranks (link):

A memory rank is, simply put, a block or area of data that is created using some or all the memory chips on a memory module.

A rank must be 64 bits of data wide; on memory modules which support Error Correction Code (ECC), the 64-bit wide data area requires an 8-bit wide ECC area for a total width of 72 bits. Depending on how memory modules are engineered, they can contain one, two, or four areas of 64-bit wide data areas (or 72-bit wide areas, where 72 bits = 64 data bits and 8 ECC bits).

The article goes on mentioning price variation:

Why do the single- and dual-rank memory modules vary in price?

In general, single-rank memory modules are built using x4 (“By 4”) DRAM chips and are more expensive than dual-rank memory modules (which are built using x8 DRAM chips); both module types have the same number of chips but the x4 DRAMs are more expensive than x8 DRAMs. Dual-rank memory modules may limit future upgradeability and capacity of servers when using PC2700 or PC2-3200 memory. This tradeoff between memory cost and capacity is important to consider when purchasing memory modules for Intel Lindenhurst-based servers.

In terms of performance, I'd refer to wikipedia:

The ranks cannot be accessed simultaneously as they share the same data path.

So to sum up everything, it appears that ranks have more to do with density and pricing than actual performance. Granted, I'm working off of generalized statements from a vendor and wikipedia, I don't think most people put much effort into researching ranks. All that matters (for most server admins) is that RAM have matching ranks. I don't think it's an actual specification or requirement but it helps keep some consistency and keeps memory interchangeable within a number of similar servers.

Keep in mind that most servers are upgradeable and RAM density has a large part in factor. It's best (albeit more expensive) to get the more dense RAM for servers to make room for future upgrades.

share|improve this answer
    
Thanks for the links - I had found the Wikipedia one but it explained a lot of 'How' without much 'Why'. So it sounds like the main implication of different ranks will be the max # of ranks supported by the chipset... –  MikeyB Sep 29 '09 at 17:24
    
Yes, it is partially driven by the chipset support. Ultimately for servers, rank comes down to density. Servers usually want more RAM to cram (sorry for the rhyme). But like you said.. it comes down the chipset for that quantity. –  osij2is Sep 29 '09 at 18:59
    
As an addendum to this; ranking does matter on some servers. Take for example the Dell R710 - if you use quad rank RAM you cannot fill more than just the A channel (from memory) and retain the full RAM speed. If you populate A and B with quad-rank RAM then the RAM speed drops to 800Mhz, and you cannot use the C channel at all. So ranking can be quite important. –  Mark Henderson Dec 5 '13 at 8:35

In principle, memory ranking may be considered as on-module memory banking. It has the same limitation effect and, in principle, does not differ much.

You may access only one memory rank at a time on a memory channel and can not read/write from/to the channel much faster than with the only single-rank chip installed.

The main idea behind memory ranking - to staff more memory into a single-slot module, decreasing the needed banks number.

Same as with memory banking, the more modules (ranks) you install, the slower memory speed is allowed.

Generally, two ranks of memory (two single-rank modules or one dual-rank) would not affect memory speed (and will even increase memory productivity to about 10%).

Four ranks (one quad-rank, two dual-rank or four single-rank) will demand to lower memory speed on one step (making total productivity about the same as with the only single-rank module).

Eight ranks (where supported) - on two steps (with overall productivity about 10% less than with a single single-rank module).

It can be said that you exchange memory speed on memory volume.

share|improve this answer
    
That's some good information - can you cite any references? –  MikeyB May 31 '10 at 16:47

As I know, Single Rank DIMM is more expensive than Dual Rank DIMM. In order to pack the same amount of memory on Single Rank DIMM, the manufacturers have to use bigger capacity chips to make up for it. That's why Single Rank DIMM tends to be more expensive.

I believe Rank has something to do with the number of connectors to the Chips on a DIMM. Since the number of connector is limited. To fit more memory with lower cost, they use two banks on a DIMM so they can use smaller chips to achieve same amount of memory. That's reason why we could run of banks without filling up all memory slots.

share|improve this answer

I believe this is related to "Dual RAM", which is actually RAID implementation for DIMMs.

When dual RAM is enabled, two DIMMs work as one, but twice faster by splitting data paths to two psysical RAM modules.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.