Re: Maximum Physical Memory on 2.4 and ia32

William Lee Irwin III (wli@holomorphy.com)
Sun, 1 Dec 2002 23:04:12 -0800


On Mon, Dec 02, 2002 at 12:08:35PM +1100, Stephen Rothwell wrote:
> (http://www.redhat.com/services/techsupport/production/GSS_caveat.html)
> What are the "operating system design limits" that restrict the amount of
> supported memory to 16GB?

I've relayed this privately in less organized private discussions:

The design limitation is that a PTE is required to map a PAGE_SIZE
-sized region. The kernel allocation unit needs to be enlarged without
breaking ABI to reduce the fraction of physical memory reserved for
metadata i.e. mem_map[]. This is called page clustering.

Hugh Dickins implemented page clustering by creating a distinction
between PAGE_SIZE and MMUPAGE_SIZE then introducing an API for dealing
with vectors of PTE's. He implemented this for 2.4.6 and 2.4.7. His
patches are at ftp://ftp.veritas.com/linux/ In other environments this
is an optimization, not a requirement to be able to run, and so it
benefits all platforms.

There are, of course, other kinds of metadata generated at runtime that
may impose limitations on feasibility of workloads on large highmem boxen.

Bill
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/