mirror of https://github.com/torvalds/linux.git
The current callchain displays the overhead rates as absolute:
relative to the total overhead.
This patch provides relative overhead percentage, in which each
branch of the callchain tree is a independant instrumentated object.
This provides a 'fractal' view of the call-chain profile: each
sub-graph looks like a profile in itself - relative to its parent.
You can produce such output by using the "fractal" mode
that you can abbreviate via f, fr, fra, frac, etc...
./perf report -s sym -c fractal
Example:
8.46% [k] copy_user_generic_string
|
|--52.01%-- generic_file_aio_read
| do_sync_read
| vfs_read
| |
| |--97.20%-- sys_pread64
| | system_call_fastpath
| | pread64
| |
| --2.81%-- sys_read
| system_call_fastpath
| __read
|
|--39.85%-- generic_file_buffered_write
| __generic_file_aio_write_nolock
| generic_file_aio_write
| do_sync_write
| reiserfs_file_write
| vfs_write
| |
| |--97.05%-- sys_pwrite64
| | system_call_fastpath
| | __pwrite64
| |
| --2.95%-- sys_write
| system_call_fastpath
| __write_nocancel
[...]
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Anton Blanchard <anton@samba.org>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <1246772361-9960-5-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
|
||
|---|---|---|
| .. | ||
| include | ||
| PERF-VERSION-GEN | ||
| abspath.c | ||
| alias.c | ||
| cache.h | ||
| callchain.c | ||
| callchain.h | ||
| color.c | ||
| color.h | ||
| config.c | ||
| ctype.c | ||
| environment.c | ||
| exec_cmd.c | ||
| exec_cmd.h | ||
| generate-cmdlist.sh | ||
| header.c | ||
| header.h | ||
| help.c | ||
| help.h | ||
| levenshtein.c | ||
| levenshtein.h | ||
| module.c | ||
| module.h | ||
| pager.c | ||
| parse-events.c | ||
| parse-events.h | ||
| parse-options.c | ||
| parse-options.h | ||
| path.c | ||
| quote.c | ||
| quote.h | ||
| run-command.c | ||
| run-command.h | ||
| sigchain.c | ||
| sigchain.h | ||
| strbuf.c | ||
| strbuf.h | ||
| string.c | ||
| string.h | ||
| strlist.c | ||
| strlist.h | ||
| symbol.c | ||
| symbol.h | ||
| types.h | ||
| usage.c | ||
| util.h | ||
| wrapper.c | ||