Page 1 of 1

3GB Memory Referencing Limit on 32-bit machines

Posted: Fri Apr 06, 2007 3:41 pm
by axiom
As we are moving from 32-bit land to 64-bit land, memory costs keep droping, Vista is introduced, yadi-yadi-yada-~

I find more people are talking about memory limitation on their machines than ever, including myself. So somehow I started looking into this topic and learned some pieces of information. Following is a conjecture I make from the information I collect, I stand to be corrected.

Hardware-wise
All the modern 32-bit CPUs (chipset limit aside) can address 64GB of system memory per processor with PAE in hand, which boost the limitation from 2^32 to 2^36 (from 4GB to 64GB)

Again chipset limit aside, the 3GB limitation people have been talking about is entirely a software issue due to the lack of PAE support.
For instance, a default 32-bit XP does not support PAE, hence this particular OS can only handle 2^32 system memory.

Here is my conjecture:
If you run Linux, Vista, or some other c00l OS's on your single 32-bit CPU, you will be able to address all your physical RAM upto 64GB minus I/O space or chipset limitation(whichever is lower).

Here is a question. (chipset limit aside), is a Core Duo CPU considered to be 2 independent processors hence being able to address x2 the memory listed above?

The post stands to be corrected
Any inputs are welcomed

Re: 3GB Memory Referencing Limit on 32-bit machines

Posted: Fri Apr 06, 2007 7:45 pm
by taob
axiom wrote:Again chipset limit aside, the 3GB limitation people have been talking about is entirely a software issue due to the lack of PAE support.
The "3GB limit" is actually quite a bit more complicated than that, but the easy answer is: with 32-bit Windows XP, don't expect to see more than 3.25 to 3.5 GB of useable memory, even if you have 4 GB of RAM physically installed.
If you run Linux, Vista, or some other c00l OS's on your single 32-bit CPU, you will be able to address all your physical RAM upto 64GB minus I/O space or chipset limitation(whichever is lower).
You still need to boot with PAE enabled under Vista, although I am not familiar with how this works under that OS. Linux... no idea. You probably should run a 64-bit kernel anyway.
Here is a question. (chipset limit aside), is a Core Duo CPU considered to be 2 independent processors hence being able to address x2 the memory listed above?
There are two CPU cores, but they both share the same memory space. It's not like each core has access to its own 4 GB of RAM (for 8 GB in total). This is the typical SMP configuration: multiple processor units all accessing the same pool of main memory.