lkml.org 
[lkml]   [2015]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 32/36] x86/entry: Micro-optimize compat fast syscall arg fetch

* Andy Lutomirski <luto@amacapital.net> wrote:

> On Fri, Oct 9, 2015 at 12:32 AM, Ingo Molnar <mingo@kernel.org> wrote:
> >
> > * Andy Lutomirski <luto@kernel.org> wrote:
> >
> >> we're following a 32-bit pointer, and the uaccess code isn't smart
> >> enough to figure out that the access_ok check isn't needed.
> >>
> >> This saves about three cycles on a cache-hot fast syscall.
> >
> > Another request: could you please stick the benchmarking code of the various x86
> > system call variants into 'perf bench' - under tools/perf/bench/, so that
> > measurements can be done on more hardware and can be reproduced easily?
> >
> > I'd suggest we dedicate an entirely new benchmark family to it: 'perf bench x86'
> > and then have:
> >
> > perf bench x86 syscall vdso
> > perf bench x86 syscall int80
> > perf bench x86 syscall vdso-compat
>
> I'll play with this. I'm not too familiar with the perf bench stuff.

So the perf bench stuff is meant to be a familiar home to kernel developers we'd
like to slap a micro (or macro) benchmark into an easy to modify place.

Over the years it has gathered a number of benchmarks - but more are always
welcome.

Just copy one of the existing benchmark modules (the tools/perf/bench/numa.c one
is the most advanced one, tools/perf/bench/sched-pipe.c is the simplest one) and
off you go.

Here's a commit that adds a new benchmark suite:

a043971141f1 ("perf bench: Add futex-hash microbenchmark")

There are no big restrictions on the benchmarks: just put your existing code in
that produces stdout output and it will be likely very close to upstream
acceptable.

Can help should you get stuck anywhere.

Thanks,

Ingo


\
 
 \ /
  Last update: 2015-10-10 11:41    [W:0.089 / U:1.092 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site