lkml.org 
[lkml]   [2009]   [Jul]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 5/5] perf report: Support callchains with relative overhead rate
    On Sun, Jul 05, 2009 at 10:34:00AM +0200, Ingo Molnar wrote:
    >
    > * Frederic Weisbecker <fweisbec@gmail.com> wrote:
    >
    > > 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.
    > >
    > > You can produce such output by using the "relative" mode
    > > that you can lower in r, re, rel, etc...
    > >
    > > ./perf report -s sym -c relative
    > >
    > > 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
    > > [...]
    >
    > Wow, this is extremely intuitive and powerful looking!
    >
    > It's basically a fractal structure: each sub-graph looks like a
    > full-blown profile in itself. Thus the overhead of individual
    > components of the graph profile can be analyzed without having to
    > think in small numbers.
    >
    > The above example shows it particularly well - it shows that in
    > regard to generic_file_buffered_write() overhead, the system is
    > doing 97% sys_pwrite64() calls and 3% sys_write() calls.
    >
    > Thus i took the liberty to change your last patch in two ways: i
    > renamed 'relative' to 'fractal' (it was not a proper counterpart to
    > 'graph' anyway - we have no 'absolute' output mode name either), and
    > i changed it to be the default output mode. This stuff rocks!



    Ok.

    I first planned to add a submode, or more likely a parameter structured
    like the following:

    perf report -c layout,min,mode

    where layout=flat|graph
    and mode=abs|rel

    But relative flat doesn't make sense.
    fractal is nice, it's just a pity that "graph" mode doesn't tell much
    about it's absolute measure context.

    > absolute-graph and flat mode can be displayed too, via the option,
    > as usual.
    >
    > Ingo



    \
     
     \ /
      Last update: 2009-07-05 15:23    [W:0.033 / U:128.148 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site