|| ||Ingo Molnar <mingo-AT-elte.hu> |
|| ||Peter Zijlstra <a.p.zijlstra-AT-chello.nl> |
|| ||Re: [RFC/Requirements/Design] h/w error reporting |
|| ||Wed, 10 Nov 2010 19:41:05 +0100|
|| ||Steven Rostedt <rostedt-AT-goodmis.org>,
"Luck, Tony" <tony.luck-AT-intel.com>, linux-kernel-AT-vger.kernel.org,
ying.huang-AT-intel.com, bp-AT-alien8.de, tglx-AT-linutronix.de,
=?iso-8859-1?Q?Fr=E9d=E9ric?= Weisbecker <fweisbec-AT-gmail.com>,
Arnaldo Carvalho de Melo <acme-AT-redhat.com>,
Arjan van de Ven <arjan-AT-infradead.org>,
Mathieu Desnoyers <mathieu.desnoyers-AT-efficios.com>|
|| ||Article, Thread
* Peter Zijlstra <firstname.lastname@example.org> wrote:
> On Wed, 2010-11-10 at 13:05 -0500, Steven Rostedt wrote:
> > Peter said at LPC that the perf buffering system was not designed to handle high
> > speed tracing. But he also said he does not like the way the ftrace buffering
> > works.
> You're not very good at listening, I said the perf infrastructure and event
> handling mechanism isn't geared towards full throughput but instead on sampling.
Note that even that is an implementational detail that can be changed: even with a
sampling model the sampling bits are in a flag word, so common combinations can be
checked for quickly and open-coded into flat fall-through code - if the sample
decoding ever shows up as overhead. (It doesnt even need any ABI changes.)
So it's a non-issue.
> There is lots of code between getting the event and landing it in the buffer. The
> buffer itself is perfectly suited for high speed low overhead stuffs, the perf
> data format possibly not because its not bitfield happy.
Even that can be tweaked via allowing more compressed records. I doubt it will help
as much, but it's still an incremental change that can be validated carefully.
Fact is that we have an ABI, happy users, happy tools and happy developers, so going
incrementally is important and allows us to validate and measure every step while
still having a full tool-space in place - and it will help everyone, in addition to
the ftrace/lttng usecases.
We'll need to embark on this incremental path instead of a rewrite-the-world thing.
As a maintainer my task is to say 'no' to rewrite-the-world approaches - and we can
and will do better here.
to post comments)