lkml.org 
[lkml]   [2017]   [Aug]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86: enable RCU based table free when PARAVIRT
On Wed, Aug 23, 2017 at 04:03:53PM -0700, Linus Torvalds wrote:
> On Wed, Aug 23, 2017 at 3:36 PM, Kirill A. Shutemov
> <kirill.shutemov@linux.intel.com> wrote:
> >
> > Below is test cases that allocates a lot of page tables and measuare
> > fork/exit time. (I'm not entirely sure it's the best way to stress the
> > codepath.)
>
> Looks ok to me. Doing a profile (without the RCU freeing, obviously) gives me
>
> 0.77% a.out [kernel.vmlinux] [k] free_pgd_range
>
>
> ▒
>
> so it does seem to spend time in the page directory code.
>
> > Unpatched: average 4.8322s, stddev 0.114s
> > Patched: average 4.8362s, stddev 0.111s
>
> Ok, I vote for avoiding the complexity of two different behaviors, and
> just making the page table freeing use RCU unconditionally.
>
> If actively trying to trigger that code doesn't show a real measurable
> difference, I don't think it matters, and the fewer different code
> paths we have, the better.

Numbers from bigger 2-socket machine:

Unpatched: average 5.0542s, stddev 0.058s
Patched: average 5.0440s, stddev 0.072s

Still fine.

I don't see a reason not to go this path.

--
Kirill A. Shutemov

\
 
 \ /
  Last update: 2017-08-24 10:49    [W:0.130 / U:0.172 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site