I'm not electrical, but I thought RAM installing in a motherboard connects directly to the CPU, so the CPU would limit the amount of RAM in a system and not the motherboard. However, motherboards often have RAM limits far lower than the CPU. Why is this?
Cost of sockets and cost of the RAM itself and of course the fact that there is not need for such large RAM capacity for most users. Adding sockets and buses to allows from more RAM stick in the Motherboard increases manufacturing costs thus price.
Also RAM memory is relatively expensive per GB. A 1 TB RAM chip would cost several thousands dollars to purchase. It is also not permanent storage. It is required only to service the execution of applications while running thus that large amounts of RAM would be useless to the average consumer.
On the contrary, in older hardware the northbridge chip is actually what directly connects to the RAM and receives requests from the CPU. It wasn't until sandy bridge with Intel that the memory controller was moved into the processor.
Therefore it was said north bridge chip that had a RAM limit.
This wikipedia article actually has pretty good diagrams of how older north bridge chips worked.
In newer chips, the other factor is the fact that motherboards can only have so many slots depending on the form factor. A specific chipset can only support so much RAM per channel, therefore however many channels your motherboard supports times the max amount per channel equals your RAM limit. Many motherboards do not have the maximum amount of slots that the CPU supports.
If you consider 64-bit addressing, which is about every operation system nowadays, that allows for about 16 exabytes of theoretical RAM. But no controller will actually support that as managing such an extreme amount is just an ungodly job for the CPU. You'd probably need a second CPU to take care of that. RAM limitations on the CPU side are probably just a sensible midway.
As for motherboard manufacturers listing a lower maximum, that might be because that specific motherboard is not using all the available electrical connections. Think of it like this, if your CPU is capable of handling 64GB of memory in a dual-channel system with 4 DIMM slots, a motherboard with only 2 DIMM slots can logically only use 32GB because the controller cannot magically reroute the PCB traces to that other slot. I hope that helped :)
Cheers
So true...Yup and that where manufacturers cut cost buy not enabling all the lanes. So there are no 16 exabyte systems for consumers.
There are server MB out there you can load up with ram.
it's limited by how much memory your processor can support.
while yes there's a limits on how much cpu's are able to support its not all end.
Its more technical than many suspects. Its about lanes and how you use them, and them your support / configuration to support bigger amounts of memory than cpu may support.
It all comes down how many slots for memory you have, and what size of memory your motherboard can support.
(you will meet mobo's that do not support bigger sticks than 32GB or 16GB, its rarely that it supports 64GB sticks)
When it comes down to getting more memory than your cpu supports, server motherboards have gained additional chip on memory banks. Those kind of memory are called "Load Reduced" or LRDIMM, if your motherboard supports such - you may be able to pack up to 1.5TB with 24 memory slots. Without LRDIMM support you are forced to be bound by your cpu.
(in server mobo's its 2-4-6-8 cpu configuration - your limit is per cpu)
(ddr4 have support for 128GB memory sticks so you may get up to 3TB with 24 memory slots)
would depend on the motherboard wiring
and it does depend on the CPU as well, Xeon chips can support insane amounts of RAM
Yeah one of my servers has 96GBs of Ram with only a few dims filled, I think it as a whole can support 2TB of ram with all 64GB sticks filling the 32 dimm slots.