Ram Memory banks used.

168 views

I was wondering how the CPU is using memory banks and stick from another point of view.

For example if i have 4 stick of 16 GB of RAM (a total of 64 GB of RAM) and windows is using only 6 GB RAM does only 1 stick of RAM is used and others are in an idle state.

OR every memory stick is used and data is spread around all memory sticks and banks.

In: 0

3 Answers

Anonymous 0 Comments

It will depend on what type of memory controller your motherboard has.

Older computers and lower powered devices have single channel memory. The limit on memory speed in this case is the bus between the processor and the RAM, so how it is divided between individual modules is irrelevant. Multi-channel memory connects multiple groups of RAM on more than one bus to increase overall speed. However even systems capable more than one channel may fall back to single channel performance if the type of memory sticks do not match each other.

Most current computers use dual channel memory controllers. On a system with four memory modules it will put two pairs in each channel. So it will use at least two of the modules. There would be no speed difference between using one on each channel or both on each channel.

If you have quad channel memory it will use each module as a channel and divide the load over all four.

Anonymous 0 Comments

In most cases it’s distributed for performance benefits. If you can use them in parallel, there’s far less of a bottleneck to the DIMMs.

Anonymous 0 Comments

The physical part is less important that the connections between the RAM and the CPU.

The computer talks to the ram in memory channels and each channel can have one or more ram sticks connected to it.

Since the CPU can talk on different channels at the same time, ideally all the memory reads and writes would be spread out among all the channels equally.

This of course require that each channel has ram in it and that under best circumstances all channel have the same amount of RAM in them.

This is the reason why on many motherboards you get some sort of indication which sockets to populate first and in which order.

This is all relatively simple in small boards which only 2 or 4 sockets, but can get complicated quite fast if you have a big sever based workstation with two CPU with 24 or 32 sockets spread out between 3 or 4 or 8 memory channels per CPU.

Luckily if you set thins up right the computer will use what it has automatically as efficiently a possible without you having to worry about optimizing where it puts what into memory. (We are no longer in the days of “Mel the real Programmer”)