[lttng-dev] Reading cache misses in Userspace?

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Mon Jan 7 08:47:44 EST 2013


* Alexander Kampmann (alexander.kampmann at gmx.de) wrote:
> hey,
>
> I would like to find out which part of my application causes most cache  
> misses. So I tried to add userspace events to my application. I hoped  
> LTTng would give me some mean of determining between which tracepoints  
> the most cache misses occur.
>
> I started a session like that:
>
> sudo lttng create session
> sudo lttng enable-event -a -u
> sudo lttng add-context -u -t perf:LLC-load-misses -t  
> perf:LLC-store-misses -t perf:LLC-prefetch-misses
>
> I get:
>
> Error: perf:LLC-prefetch-misses: UST invalid context
> Error: perf:LLC-store-misses: UST invalid context
> Error: perf:LLC-load-misses: UST invalid context
>
> Does this mean I can not add perf:LLC-* context to my userspace events?  
> Is there any way to figure out which part of my application causes cache  
> misses?

Currently, perf counters are only for kernel tracing (-k domain). We
envision using those counters from user-space when Linux kernel support
will be there.

>
> If I use
>
> sudo lttng add-context -k -t perf:LLC-load-misses -t  
> perf:LLC-store-misses -t perf:LLC-prefetch-misses
>
> instead, I don't get an error, but the babeltrace output does not  
> contain any cache miss counts as well.

Does it contain _any_ performance counters at all ?

Did you ensure that you issue add-context before you start tracing ?

How many performance counters does your machine have ? Shown by dmesg,
e.g.:

dmesg |grep "generic reg"

Thanks,

Mathieu

>
> I would appreciate any help,
>
> Alex
>
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

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



More information about the lttng-dev mailing list