56

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.

MikeyB
  • 38,725
  • 10
  • 102
  • 186

4 Answers4

43

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.

osij2is
  • 3,875
  • 2
  • 23
  • 31
  • 1
    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
  • 1
    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
  • 3
    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 05 '13 at 08:35
  • 3
    I've always been told to go with dual-rank over single rank. Indeed, your statement "it appears that ranks have more to do with density and pricing than actual performance" appears at odds with IBM's statement from the question, "Dual-rank DIMMs offer better interleaving and hence better performance than single-rank DIMMs". So now I'm confused. – Mike S Apr 05 '17 at 14:29
24

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.

5

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.

jacklty
  • 71
  • 1
  • 5
0

The primary casual factor for multiple rank DIMMs is memory IC density.

This comes at the cost of potential compatibility issues on some chipsets. Although dual rank DIMMs can be seen to perform better on some chipsets.

Single rank DIMMs tend to be more expensive; as to achieve the same capacity, the memory ICs have to be larger.

tomwof
  • 1
  • 2