[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161121141517.31936dbe@gandalf.local.home>
Date: Mon, 21 Nov 2016 14:15:17 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Andi Kleen <andi@...stfloor.org>
Cc: Peter Zijlstra <peterz@...radead.org>,
Jiri Olsa <jolsa@...hat.com>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...nel.org>,
Josh Triplett <josh@...htriplett.org>,
Jan Stancek <jstancek@...hat.com>
Subject: Re: [BUG] msr-trace.h:42 suspicious rcu_dereference_check() usage!
On Mon, 21 Nov 2016 10:37:00 -0800
Andi Kleen <andi@...stfloor.org> wrote:
> Just adding a few inlines won't fix the gigantic bloat that is currently
> there. See the PT trace I posted earlier (it was even truncated, it's
> actually worse). Just a single enabled trace point took about a us.
If you want to play with that, enable "Add tracepoint that benchmarks
tracepoints", and enable /sys/kernel/debug/tracing/events/benchmark
I just did on my box, and I have a max of 1.27 us, average .184 us.
Thus, on average, a tracepoint takes 184 nanoseconds.
Note, a cold cache tracepoint (the first one it traced which is not
saved in the "max") was 3.3 us.
Yes it can still be improved, and I do spend time doing that.
>
> POPF can cause some serializion but it won't be more than a few tens
> of cycles, which would be a few percent at best.
>
> Here is it again untruncated:
>
> http://halobates.de/tracepoint-trace
There's a lot of push and pop regs due to function calling. There's
places that inlines can still improve things, and perhaps even some
likely unlikelys well placed.
-- Steve
Powered by blists - more mailing lists