[LITMUS^RT] RFC: kernel-style events for Litmus^RT

Andrea Bastoni bastoni at cs.unc.edu
Thu Feb 16 09:39:21 CET 2012


2012/2/16 Björn Brandenburg <bbb at mpi-sws.org>:
> On Feb 16, 2012, at 12:36 AM, Jonathan Herman wrote:
>
>> Chris, Glenn, Mac, and I are pro abandoning unit-trace for kernel visualization. Bjoern and Andrea, what do
>> you think about this? Going forward, I would see us dropping unit-trace for kernel visualization, but could
>> we replace sched_trace entirely in the long term? Would we want to?
>
> As long as there is a tool to convert a trace in the new Linux format to a traditional sched_trace file I'm fine with ripping out the old implementation. At MPI, we use the feather-trace and sched-trace format for non-LITMUS^RT projects as well, so I'm not in favor of retiring all associated tools.

I'm for evaluating the new trace framework for a while, and then
decide whether we can substitute the sched_trace framework entirely.
In the meanwhile we can evaluate how easy it is to create converter(s)
for the traditional sched_trace file format.
I believe the maintenance overhead of keeping both the tracing
frameworks for a while shouldn't be very high (the only contact point
is in the sched_trace_XXX macros in include/litmus/sched_trace.h).

>  I'd be opposed to ripping out feather-trace itself since I suspect the Linux tracing frameworks are a bit more complicated (because they are _much_ more flexible) and hence overhead-affected, though I could be proven wrong by actual measurements. Given that sched-trace is just a thin layer on top of feather-trace, I don't think it is a big difference whether we keep it or not.
>
> To replace Feather-Trace entirely, I'd like to see 1) data that shows that the new trace framework does not create higher overheads, and 2) the ability to insert events from userspace (very handy for measuring syscall overhead and other userspace overheads).

I agree. I also believe (but I don't have comparative data) that the
overheads of the in-kernel tracing infrastructure are higher than
overheads of the feather_trace framework. This can be acceptable for
the sched_trace framework, but it's not acceptable for overhead
collection for schedulability experiments.
Regarding the above 2), the "trace_marker" file can be used to write
markers from userspace into the ftrace frame buffer.

Thanks,
- Andrea




More information about the litmus-dev mailing list