From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>, Ingo Molnar <mingo@elte.hu>,
"Ted Ts'o" <tytso@mit.edu>, Thomas Gleixner <tglx@linutronix.de>,
LKML <linux-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>,
Arjan van de Ven <arjan@infradead.org>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>,
Tom Zanussi <tzanussi@gmail.com>, Li Zefan <lizf@cn.fujitsu.com>,
Jason Baron <jbaron@redhat.com>,
"David S. Miller" <davem@davemloft.net>,
Christoph Hellwig <hch@lst.de>, Pekka Enberg <penberg@kernel.org>,
Lai Jiangshan <laijs@cn.fujitsu.com>,
Eric Dumazet <eric.dumazet@gmail.com>
Subject: Re: [ANNOUNCE] New utility: 'trace'
Date: Wed, 17 Nov 2010 13:23:44 -0500 [thread overview]
Message-ID: <20101117182344.GD13717@Krystal> (raw)
In-Reply-To: <1290008637.2109.967.camel@laptop>
* Peter Zijlstra (peterz@infradead.org) wrote:
> On Wed, 2010-11-17 at 10:10 -0500, Steven Rostedt wrote:
> >
> > Right, the problem with filtering is what do we want to filter, and what
> > about copying?
> >
> > Currently, we copy the data into the buffer and then filter on that
> > data. We could also easily filter on the parameters of the tracepoint,
> > but sometimes those parameters do not match the final output (as the
> > case with sched_switch). Do we copy the data into a separate "per cpu"
> > temp buffer, and figure out the filter then? And if the filter is fine,
> > then copy into the buffer. This obviously is slow, due to the multiple
> > copies. We could do this only if the filtering is enabled.
>
> Right, so what is the primary purpose of this filtering stuff? As it
> stands it makes stuff terribly slow, so you add overhead but the win
> (presumably) is less data output, is that a sane trade-off?
>
> Most people I've heard -- both at LinuxCon.JP and LPC -- are asking for
> lower overhead tracing (while at the same time demanding more features).
>
> Who are actually using this and can they provide some input on this?
Amongst others, Ericsson rely on this kind of feature. The case where we're
filtering "out" should be really, really fast (even if it makes the recording
slightly slower). If there is a race modifying the data underneath between the
filter execution and the copy to the buffers, I really don't think it matters.
If the tracepoint caller context don't provide data consistency guarantees for
the parameters it passes, we should not expect 100% perfect consistency between
filter and what is actually saved in the trace. The trace analysis tools should
just be able to cope with that, but I really don't think anyone should care.
So I would recommend no copy, filter directly on the source data, stop the
filter chain as soon as a non-match is observed. Copy the data into the buffers
if the filter passes.
Thanks,
Mathieu
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
next prev parent reply other threads:[~2010-11-17 18:23 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-16 21:04 [ANNOUNCE] New utility: 'trace' Thomas Gleixner
2010-11-16 21:27 ` Darren Hart
2010-11-16 21:59 ` Ingo Molnar
2010-11-16 22:03 ` Peter Zijlstra
2010-11-16 22:08 ` Ingo Molnar
2010-11-16 22:09 ` Darren Hart
2010-11-16 22:48 ` Darren Hart
2010-11-16 22:07 ` Darren Hart
2010-11-16 22:17 ` Frederic Weisbecker
2010-11-17 8:30 ` Ingo Molnar
2010-11-17 11:35 ` Peter Zijlstra
2010-11-17 12:53 ` Frederic Weisbecker
2010-11-17 13:02 ` Peter Zijlstra
2010-11-17 13:10 ` Ingo Molnar
2010-11-17 13:36 ` Peter Zijlstra
2010-11-17 13:43 ` Frederic Weisbecker
2010-11-17 13:53 ` Peter Zijlstra
2010-11-17 14:10 ` Frederic Weisbecker
2010-11-17 15:02 ` Steven Rostedt
2010-11-17 18:13 ` Ted Ts'o
2010-11-17 18:29 ` Frederic Weisbecker
2010-11-17 18:30 ` Darren Hart
2010-11-17 16:49 ` Darren Hart
2010-11-18 23:23 ` Joe Perches
2010-11-16 21:35 ` Ingo Molnar
2010-11-17 1:37 ` Ted Ts'o
2010-11-17 1:47 ` Steven Rostedt
2010-11-17 3:16 ` Ted Ts'o
2010-11-17 3:34 ` Steven Rostedt
2010-11-17 19:00 ` Bob Copeland
2010-11-17 13:24 ` Ingo Molnar
2010-11-17 13:38 ` Peter Zijlstra
2010-11-17 14:00 ` Ingo Molnar
2010-11-17 14:11 ` Peter Zijlstra
2010-11-17 14:18 ` Peter Zijlstra
2010-11-17 14:37 ` Thomas Gleixner
2010-11-17 14:41 ` Peter Zijlstra
2010-11-17 15:41 ` Tom Zanussi
2010-11-17 15:55 ` Avi Kivity
2010-11-17 15:58 ` Thomas Gleixner
2010-11-17 16:20 ` Avi Kivity
2010-11-17 15:59 ` Peter Zijlstra
2010-11-17 16:08 ` Avi Kivity
2010-11-17 15:10 ` Steven Rostedt
2010-11-17 15:43 ` Peter Zijlstra
2010-11-17 16:04 ` Steven Rostedt
2010-11-17 16:15 ` Steven Rostedt
2010-11-17 19:40 ` Darren Hart
2010-11-17 18:23 ` Mathieu Desnoyers [this message]
2010-11-18 5:58 ` Masami Hiramatsu
2010-11-18 6:00 ` Masami Hiramatsu
2010-11-17 15:33 ` Tom Zanussi
2010-11-17 18:36 ` Mathieu Desnoyers
2010-11-17 18:53 ` Tom Zanussi
2010-11-17 19:02 ` Mathieu Desnoyers
2010-11-17 19:25 ` Tom Zanussi
2010-11-17 19:25 ` Steven Rostedt
2010-11-17 9:49 ` Philipp Marek
[not found] ` <4CE38C53.8090606@kernel.org>
2010-11-17 12:07 ` [patch] trace: Add user-space event tracing/injection Ingo Molnar
2010-11-17 12:17 ` Pekka Enberg
2010-11-17 12:30 ` Ingo Molnar
2010-11-17 12:33 ` Pekka Enberg
2010-11-17 12:42 ` Peter Zijlstra
2010-11-17 12:58 ` Ingo Molnar
2010-11-17 13:09 ` Peter Zijlstra
2010-11-17 13:36 ` Ingo Molnar
2010-11-17 12:24 ` Ingo Molnar
2010-11-17 12:30 ` Pekka Enberg
2010-11-17 12:29 ` Peter Zijlstra
2010-11-17 12:37 ` Peter Zijlstra
2010-11-17 13:10 ` Frederic Weisbecker
2010-11-17 13:31 ` Peter Zijlstra
2010-11-17 13:33 ` Frederic Weisbecker
2010-11-18 1:18 ` Darren Hart
2010-11-18 8:55 ` Ingo Molnar
2010-11-18 16:25 ` hp
2010-11-18 18:56 ` Ingo Molnar
2010-11-18 19:13 ` AW: " Reichert, Hans-Peter
2010-11-18 17:06 ` Darren Hart
2010-11-17 12:47 ` [ANNOUNCE] New utility: 'trace' Török Edwin
2010-11-17 12:51 ` Peter Zijlstra
2010-11-17 13:05 ` Török Edwin
2010-11-17 13:10 ` Peter Zijlstra
2010-11-17 13:32 ` Frederic Weisbecker
2010-11-18 0:47 ` Ian Munsie
[not found] ` <20101118151141.GA3368@redhat.com>
2010-11-19 2:32 ` Ian Munsie
2010-11-19 15:23 ` Jason Baron
[not found] ` <4CECACF9.3080907@linux.vnet.ibm.com>
[not found] ` <4CFD7182.4060206@linux.vnet.ibm.com>
2010-12-07 4:03 ` PowerPC, ftrace: Add PPC raw syscall tracepoints & ftrace fixes Ian Munsie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101117182344.GD13717@Krystal \
--to=mathieu.desnoyers@efficios.com \
--cc=acme@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=fweisbec@gmail.com \
--cc=hch@lst.de \
--cc=jbaron@redhat.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lizf@cn.fujitsu.com \
--cc=masami.hiramatsu.pt@hitachi.com \
--cc=mingo@elte.hu \
--cc=penberg@kernel.org \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=tytso@mit.edu \
--cc=tzanussi@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox