Re: [PATCH 2/2] perfcounters: print a sorted summary of annotatedoverhead lines

From: Ingo Molnar
Date: Sat Jun 13 2009 - 07:02:51 EST



* Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:

> It's can be very annoying to scroll down perf annotated output
> until we find relevant overhead.
>
> Using the -l option, you can now have a small summary sorted per
> overhead in the beginning of the output.
>
> Example:
>
> ./perf annotate -l -k ../../vmlinux -s __lock_acquire
>
> Sorted summary for file ../../vmlinux
> ----------------------------------------------
>
> 12.04 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1653
> 4.61 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1740
> 3.77 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1775
> 3.56 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1653
> 2.93 /home/fweisbec/linux/linux-2.6-tip/arch/x86/include/asm/irqflags.h:15
> 2.83 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:2545
> 2.30 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:2594
> 2.20 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:2388
> 2.20 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:730
> 2.09 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:730
> 2.09 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:138
> 1.88 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:2548
> 1.47 /home/fweisbec/linux/linux-2.6-tip/arch/x86/include/asm/irqflags.h:15
> 1.36 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:2594
> 1.36 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:730
> 1.26 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1654
> 1.26 /home/fweisbec/linux/linux-2.6-tip/kernel/lockdep.c:1653

Nice!

I'm wondering how hard it would be to add wildcard support to the
symbol matching, say:

perf annotate "sys_*" # Annotate all syscalls
perf annotate "sched*" # All scheduler functions
perf annotate "*" # All symbols we know about

It would be slower, obviously - but pretty useful as well.

Also, perhaps an 'annotate top 10 overhead functions':

perf annotate --top 10

Would be popular too ...

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/