And since someone asked for a Link. The biggest box is the Altix 4700, which according
to http://www.sgi.com/products/servers/altix/4000/ supports upto 128TB single image
(note that is IA64, not x86). That is the theoretical maximum, but we know of running systems with >10 TB memory. Linux needed some special tunings to scale that high.
There are also a couple of other systems which support memory in the multi TB range.
The largest running x86 system I know of has 512GB. I had to fix a bug a couple
of years ago in the x86-64 port to go that high. It fortunately was a one-liner.
Also note that physical address bits are not only needed for memory. The large NUMA systems tend to have holey physical address maps too, so they need more physical space. And then there is memory mapped IO which also needs physical address space, sometimes a lot of it for special devices. e.g. consider some interconnect link that allows you
to do RDMA to large areas of memory of a huge cluster. Ideally you would want
to have address space for all of that.
If you go back to consumer space for example if you have a graphics card with 1GB
of memory you better have physical space for 1GB to address it directly.
Yes it's all addressable
And since someone asked for a Link. The biggest box is the Altix 4700, which according
to http://www.sgi.com/products/servers/altix/4000/ supports upto 128TB single image
(note that is IA64, not x86). That is the theoretical maximum, but we know of running systems with >10 TB memory. Linux needed some special tunings to scale that high.
There are also a couple of other systems which support memory in the multi TB range.
The largest running x86 system I know of has 512GB. I had to fix a bug a couple
of years ago in the x86-64 port to go that high. It fortunately was a one-liner.
Also note that physical address bits are not only needed for memory. The large NUMA systems tend to have holey physical address maps too, so they need more physical space. And then there is memory mapped IO which also needs physical address space, sometimes a lot of it for special devices. e.g. consider some interconnect link that allows you
to do RDMA to large areas of memory of a huge cluster. Ideally you would want
to have address space for all of that.
If you go back to consumer space for example if you have a graphics card with 1GB
of memory you better have physical space for 1GB to address it directly.