Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
From: mathieu.desnoyers@efficios.com (Mathieu Desnoyers)
Subject: [ltt-dev] LTTng-UST vs SystemTap userspace tracing benchmarks
Date: Tue, 15 Feb 2011 12:04:31 -0500	[thread overview]
Message-ID: <20110215170431.GA27890@Krystal> (raw)
In-Reply-To: <AANLkTi=Nsy6fXE9=Njxs9LPHuohHzf=q5kD+fK765Rht@mail.gmail.com>

* Stefan Hajnoczi (stefanha at gmail.com) wrote:
> On Tue, Feb 15, 2011 at 4:26 PM, Frank Ch. Eigler <fche at redhat.com> wrote:
> >
> > Julien Desfossez <julien.desfossez at polymtl.ca> writes:
> >
> >> LTTng-UST vs SystemTap userspace tracing benchmarks
> >
> > Thank you.
> >
> >> [...] ?For flight recorder tracing, UST is 289 times faster than
> >> SystemTap on an 8-core system with a LTTng kernel and 279 times with
> >> a vanilla+utrace kernel.
> >
> > This is not that surprising, considering how the two tools work. ?UST
> > does its work in userspace, and is therefore focused on an individual
> > process's activities. ?Systemtap does its work in kernelspace, and can
> > therefore focus on many different processes and the kernel at the same
> > time. ?This entails some ring transitions.
> >
> > (One may imagine a future version of systemtap where scripts that
> > happen to independently probe single processes are executed with a
> > pure userspace backend, but this is not in our immediate roadmap.)
> 

Hi Stefan,

> What is the fundamental mechanism that UST and SystemTap use for tracing?
> 
> e.g. Here's a guess:
> UST: a conditional function call within the same process

Yes, UST can manage to stay within the same process because tracing is buffered:
it only has to write the trace data into shared-memory buffers. Therefore, a
simple function call is sufficient.

> SystemTap: a software interrupt on x86

Yep, AFAIK, SystemTap needs to receive everything at the kernel-level to perform
its system-wide data processing at kernel-level, without buffering between the
data extraction from the instrumented applications and the in-kernel execution
of SystemTap. This leads to a strong dependency on using a software interrupt
for every event.

Thanks,

Mathieu

> I don't know the implementations details but would be interested in
> understanding this.
> 
> Stefan

-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com




  reply	other threads:[~2011-02-15 17:04 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-15 15:53 Julien Desfossez
2011-02-15 16:25 ` William Cohen
2011-02-17 16:20   ` Julien Desfossez
2011-02-15 16:26 ` Frank Ch. Eigler
2011-02-15 16:54   ` Mathieu Desnoyers
2011-02-15 17:39     ` Frank Ch. Eigler
2011-02-15 22:25       ` Mathieu Desnoyers
2011-02-15 17:00   ` Stefan Hajnoczi
2011-02-15 17:04     ` Mathieu Desnoyers [this message]
2011-02-16 10:56     ` Mark Wielaard
2011-02-16 18:50       ` Roland McGrath
2011-02-16 20:00         ` [ltt-dev] Porting "jump labels" to userspace (was: Re: LTTng-UST vs SystemTap userspace tracing benchmarks) Mathieu Desnoyers
2011-02-16 20:04           ` Roland McGrath
2011-02-16 20:17             ` [ltt-dev] Porting "jump labels" to userspace David Daney
2011-02-16 20:39               ` Mathieu Desnoyers
2011-02-16 20:45                 ` Thomas Gleixner
2011-02-16 21:42                   ` Peter Zijlstra
2011-02-17 13:58                     ` Ingo Molnar
2011-02-16 20:14           ` David Daney
2011-02-16 20:36             ` Mathieu Desnoyers
2011-02-16 20:55         ` [ltt-dev] LTTng-UST vs SystemTap userspace tracing benchmarks Stefan Hajnoczi
2011-02-16 21:05           ` Mathieu Desnoyers
2011-02-16 21:16           ` Mark Wielaard
2011-02-15 17:03 ` Mark Wielaard
2011-02-16 15:30 ` Tom Tromey
2011-02-16 18:19   ` Roland McGrath
2011-02-17 17:33   ` Julien Desfossez
2011-02-17 19:11     ` Josh Stone
2011-02-17 19:33       ` Julien Desfossez
2011-02-17 19:47         ` Josh Stone

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=20110215170431.GA27890@Krystal \
    --to=mathieu.desnoyers@efficios.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