Re: [PATCH 0/11] LTTng-core (basic tracing infrastructure) 0.5.108

Jose R. Santos
2006-09-15T23:17:31Z

Ingo Molnar wrote:
> * Jose R. Santos <jrs@us.ibm.com> wrote:
>
> > [...] While it is true that static probes will provide less overhead
> > compared to dynamic probes, [...]
>
> that is not true at all. Yes, an INT3 based kprobe might be expensive if
> +0.5 usecs per tracepoint (on a 1GHz CPU) is an issue to you - but that
> is "only" an implementation detail, not a conceptual property.
> Especially considering that help (djprobes) is on the way. And in the
> future, as more and more code gets generated (and regenerated) on the
> fly, dynamic probes will be _faster_ than static probes - plainly
> because they adapt better to the environment they plug into.
>
Agree. And they are details that can be fixed.

One such detail we still see issue with is kretprobes though (which we
use on LKET for systemcall exit). These have problem scaling due to
spinlock issues even on small smp systems. Its an implementation issue
that can be fixed but I've been told that the fix is not trivial and
should not expect it anytime soon.
> so there's basically nothing to balance. My point is that dynamic probes
> have won or will win on every front, and we shouldnt tie us down with
> static tracers. 5 years ago with no kprobes, had someone submitted a
> clean static tracer patchset, we could probably not have resisted it (i
> though probably would have resisted it on the grounds of maintainance
> overhead) and would have added it because tracing makes sense in
> general. But today there's just no reason to add static tracers anymore.
>
> NOTE: i still accept the temporary (or non-temporary) introduction of
> static markers, to help dynamic tracing. But my expectation is that
> these markers will be less intrusive than static tracepoints, and a lot
> more flexible.
>
Agree here as well. Sorry, I was also counting static markers as
static tracepoint as well. Even with static markers, there need to be
balance of what thing need to be implemented with markers vs those that
can just be done dynamically.

-JRS