Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Nov 2000 21:56:22 -0600
From:      "Jason" <jsmethers@pdq.net>
Cc:        <hackers@FreeBSD.org>
Subject:   Re: PSE/PAE support
Message-ID:  <01a001c04a01$06548900$e6c81f40@pdq.net>
References:  <XFMail.001108120910.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
From: "John Baldwin" <jhb@FreeBSD.org>
> On 08-Nov-00 Jeroen Ruigrok van der Werven wrote:
> > We support 4 Kbyte pages and 4 Mbyte pages, but we do not support 2
> > Mbyte pages.  On IA-32 at least.
> >
> > Is there a reason to?

If you have the time to burn, want to squeeze out that small amount of
possible performace from reduced TLB misses, or want to support that small
nich of server hardware that can use more then 4GB of memory.

> The benefits of PAE are that you can support a machine that has more than
4gb
> of phyiscal ram, up to 64gb.  However, the virtual address space is still
4gb,
> so a process (and kernel with the current way we do our virtual address
> mapping) must still fit into a 4gb space.

> > I could understand that some people would prefer 2 Mbyte pages in some
> > situations.  But looking at pmap.c I see we only test CPUID_PSE and
> > don't use CPUID_PAE anywhere.
>
> Actually, the 2mb pages really don't buy us anything.  We only use large
pages
> now to map the kernel, AFAIK.
>

On IA-32 the 4MB/2MB entries pose two benifits. First they allow the support
of a larger physical memory space and second they reduce the entries used in
the TLB. Currently FreeBSD/i386 uses a 4MB entry for the first 4MB of memory
because it can assume that this area of memory containing various BIOS data,
IO mappings, and kernel text, bss, and data will never be swapped out. This
condenses a somewhat constant 1024 entries to one. I'd have to look at the
way things are mapped again, but this may save a 4KB page of memory or most
likly the page is left unrefernced because it is a magic page allocated for
the PTD of the first 4MB of memory.

> > Since pmap.c is in a MD location it wouldn't be hard to extend the code
> > to do this.

Say that again after you've done it ...

-Jason




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?01a001c04a01$06548900$e6c81f40>