Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Aug 2014 14:52:12 -0500
From:      Alan Cox <alan.l.cox@gmail.com>
To:        Adrian Chadd <adrian@freebsd.org>
Cc:        Konstantin Belousov <kostikbel@gmail.com>, "freebsd-arch@freebsd.org" <arch@freebsd.org>, Gleb Smirnoff <glebius@freebsd.org>, "Alexander V. Chernikov" <melifaro@freebsd.org>, "Andrey V. Elsukov" <ae@freebsd.org>
Subject:   Re: superpages for UMA
Message-ID:  <CAJUyCcOSoFwHmeX=fN3deqAZPn-T3EFtCkFje5u8woDz2qoaRw@mail.gmail.com>
In-Reply-To: <CAJ-VmokXDtXSqCKo9wNVeqd9yQeZwgvjWqPA4tQnydx%2B0W_Gzg@mail.gmail.com>
References:  <53F215A9.8010708@FreeBSD.org> <20140818183925.GP2737@kib.kiev.ua> <CAJ-VmokXDtXSqCKo9wNVeqd9yQeZwgvjWqPA4tQnydx%2B0W_Gzg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Aug 18, 2014 at 2:45 PM, Adrian Chadd <adrian@freebsd.org> wrote:

> Hi!
>
> I dug into this a little bit last year. I saw a lot of time spent just
> walking TLBs for VM pages when doing a lot of VM page -> network
> pushing.
>
> On the sandy bridge boxes with 1G page entries, the TLB only has 4 entries.
>
> The high area of memory isn't 1G aligned, so we don't use 1G pages for
> all the stuff that's allocated initially. That includes, among other
> things, all the VM memory that you need.
>
> The other thing that crept up was that we don't try to reserve memory
> in any way - we'll just fragment stuff quickly from the pmap and
> allocate where we can when we can. So there's currently no attempt to
> allocate small kernel structures from the same underlying 1G page.
>
>
For uma_small_alloc(), there is VM_FREEPOOL_DIRECT.  However, this is still
tuned for 2 MB pages.


> That'd be an interesting experiment - allocating VM entries and other
> small things like rtentry and mbuf UMA entries from one or two 1GB
> regions of memory. It may make better use of the 1G (or 2M) TLB
> entries and keep things hot.
>
>
>
> -a
> _______________________________________________
> freebsd-arch@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arch
> To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJUyCcOSoFwHmeX=fN3deqAZPn-T3EFtCkFje5u8woDz2qoaRw>