[ltt-dev] LTTng specialized probes

Martin Bligh mbligh at google.com
Wed Oct 8 12:06:43 EDT 2008


> Has anyone thought of / tried out some caching mechanism for this task?
> I mean, scan the format string once (I don't think it will change during
> runtime... :->), save somewhere that it expects n bytes of
> to-be-serialized data on the caller's stack and then get away with only
> copying those over into the trace buffer on succeeding marker hits?

Is it crazy to think of this as "everyone registers a print function", and
we just provide a default print function that takes a string that people
can use if they are not concerned with efficiency? Possibly with a different
macro header if need be to hide it.

Another random thought ... was talking with Michael and Jiaying here about
the markers, and it seemed one of the performance / complexity issues
was the necessity to call multiple tracers from one marker (disclaimer:
I haven't had the time to look at this in any detail, sorry, so please forgive
if this totally misses something ...). Would it be possible to always just have
one thing attached to the marker - this would be optimal for the common case.
In the event that we do need multiple tracers attached, we could simply make
the one thing attached to the marker a multiplexor that called a list of tracers
(transparently).

I expect this would reduce complexity and speed up the common case, at the
expense of a little performance in the uncommon case. Though all of this
is fairly second-hand, so maybe is not useful ;-( Sorry, buried in
Google-specific
stuff right now.




More information about the lttng-dev mailing list