Also, swapping memory in and out of the address space is a rather costly operation. And it becomes infeasible if the process's working set grows larger than the available address space [thrashing].
I think that on Linux, the 4G/4G split never made it, so in practice the limit is around 64GB due the limited amount of lowmem available to the kernel in the regular 3G/1G split.
Also, swapping memory in and out of the address space is a rather costly operation. And it becomes infeasible if the process's working set grows larger than the available address space [thrashing].