All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: "Frank Ch. Eigler" <fche@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Tim Bird <tim.bird@am.sony.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	Li Zefan <lizf@cn.fujitsu.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/4] ftrace - add function_duration tracer
Date: Thu, 10 Dec 2009 21:14:54 +0100	[thread overview]
Message-ID: <20091210201454.GA31461@elte.hu> (raw)
In-Reply-To: <20091210185044.GC30999@redhat.com>


* Frank Ch. Eigler <fche@redhat.com> wrote:

> Hi -
> 
> 
> On Thu, Dec 10, 2009 at 07:35:08PM +0100, Ingo Molnar wrote:
> > [...]
> > target_set.stp is not really adequate. Have you actually _tried_ to use 
> > it on something real like hackbench, which runs thousands (or tens of 
> > thousands) of tasks? You'll soon find that associative arrays are not 
> > really adequate for that ... [...]
> 
> A few thousand entries in a hash table is really not that big a deal.

Except if it's a high-freq event and the huge hash table is kept in the 
CPU cache all the time.

> > > > Also, i dont think stap supports proper separation of per 
> > > > workload measurements either. I.e. can you write a script that 
> > > > will work properly even if multiple monitoring tools are 
> > > > running, each trying to measure latencies?
> > > 
> > > Sure, always has.  You can run many scripts concurrently, each 
> > > with its own internal state.  (Overheads accumulate, sadly & 
> > > naturally.)
> > 
> > To measure latencies you need two probes, a start and a stop one. 
> > How do you define a local variable that is visible to those two 
> > probes? You have to create a global variable - but that will/can 
> > clash with other instances.
> 
> You misunderstand systemtap "global" values.  They are global to that 
> particular execution of that particular script.  They are not shared 
> between scripts that may be concurrently running.

Ok.

> > ( Also, you dont offer per application channels/state from the same 
> >   script. Each app has to define their own probes, duplicating the 
> >   script and increasing probe chaining overhead. )
> 
> Please elaborate what you mean.

Firstly, AFAICS each subsequent systemtap probe for the same event adds 
chaining overhead - and then you have to disambiguate back to the 
originating script. Secondly, is there a way for a single probe to 
multiplex its output to multiple apps? AFAICS that's only possible by 
running multiple scripts.

> > > > Also, i personally find built-in kernel functionality more 
> > > > trustable than dynamically built stap kernel modules that get 
> > > > inserted.
> > > 
> > > I understand.  In the absence of a suitable bytecode engine in the 
> > > kernel, this was the only practical way to do everything we 
> > > needed.
> > 
> > You seem to be under the mistaken assumption that your course of 
> > action with SystemTap is somehow limited by what is available (or 
> > not) in the upstream kernel. In reality you can implement anything 
> > you want [...]
> 
> The message we have received time, after time, after time was 
> stronger: that a suitable interpreter was not going to be welcome in 
> tree.  If this is relaxed (and perhaps even if not), we may prototype 
> such a thing in the new year.

FYI, i suggested this to you 2-3 years ago.

	Ingo

  reply	other threads:[~2009-12-10 20:15 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-09 22:40 [PATCH 2/4] ftrace - add function_duration tracer Tim Bird
2009-12-10  7:08 ` Ingo Molnar
2009-12-10 12:03   ` Frederic Weisbecker
2009-12-10 14:11     ` Ingo Molnar
2009-12-10 14:53       ` Steven Rostedt
2009-12-10 15:38         ` Ingo Molnar
2009-12-10 16:22           ` Steven Rostedt
2009-12-10 16:52             ` Ingo Molnar
2009-12-10 17:16               ` Steven Rostedt
2009-12-10 17:28           ` Frank Ch. Eigler
2009-12-10 17:57             ` Ingo Molnar
2009-12-10 18:04               ` Frank Ch. Eigler
2009-12-10 18:35                 ` Ingo Molnar
2009-12-10 18:50                   ` Frank Ch. Eigler
2009-12-10 20:14                     ` Ingo Molnar [this message]
2009-12-10 21:30                       ` Frank Ch. Eigler
2009-12-10 14:29     ` Steven Rostedt
2009-12-10 16:16       ` Ingo Molnar
2009-12-10 20:23       ` Frederic Weisbecker
2009-12-10 21:55         ` Steven Rostedt
2009-12-10 22:40           ` Frederic Weisbecker
2009-12-10 21:13   ` Tim Bird
2009-12-10 22:04     ` Steven Rostedt
2009-12-10 22:26       ` Tim Bird
2009-12-10 22:36       ` Tim Bird
2009-12-10 23:47         ` Steven Rostedt

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=20091210201454.GA31461@elte.hu \
    --to=mingo@elte.hu \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=fche@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizf@cn.fujitsu.com \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    --cc=tim.bird@am.sony.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.