[lttng-dev] tracing scheduler wakeup latency with lttng

Francis Giraldeau francis.giraldeau at gmail.com
Tue Aug 13 11:30:22 EDT 2013


Le 2013-08-12 11:15, Kannan Ramaswamy a écrit :
> Hi,
> I am new to lttng and am reading through the documentation. Does
> anyone have experience tracing linux scheduler latencies with lttng? I
> will be grateful if you could provide a cheat sheet of instructions to
> follow. I want to get a call trace of kernel operations for each time
> the scheduler wakeup was over some prespecified microsecond duration.

The scheduler latency is the delay between a task becomes runnable and
the time it's actually running. The event that indicates the task was
waiting and is now runnable is sched_wakeup (or sched_wakeup_new in the
case of a newly forked task). The time between this event and it's
corresponding sched_switch indicates the scheduling latency.

I'm using Java library to do the analysis. Here is a simple example of
how to perform some analysis on a trace.

https://github.com/giraldeau/org.eclipse.linuxtools.lttng2.kmem

>
> I have compiled lttng 2.2 on a vanilla 3.10.5 kernel on a 16 core
> Intel Xeon CPU E5-2690 @2.90GHz. I am trying to identify and reduce my
> multithreaded multicast based application service latency.

You should make sure there is no event loss, because it would yield
wrong results. You can increase kernel buffer size when enabling
channels. Have a look at how it's done in lttng-simple.

https://github.com/giraldeau/workload-kit/blob/master/utils/lttng-simple

Is it an open source app? Is it possible to publish the traces? I could
take a look at it.

Cheers,

Francis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lttng.org/pipermail/lttng-dev/attachments/20130813/5c6de3be/attachment.html>


More information about the lttng-dev mailing list