• Milian Wolff's avatar
    perf report: Fall-back to function name comparison for -g srcline · cbe50f61
    Milian Wolff authored
    When a callchain entry has no srcline available, we ended up comparing
    the instruction pointer. I consider this to be not too useful. Rather, I
    think we should group the entries by function name, which this patch
    adds. For people who want to split the data on the IP boundary, using
    `-g address` is the correct choice.
    
    Before:
    
    ~~~~~
       100.00%    38.86%  [.] main
                |
                |--61.14%--main inlining.cpp:14
                |          std::norm<double> complex:664
                |          std::_Norm_helper<true>::_S_do_it<double> complex:654
                |          std::abs<double> complex:597
                |          std::__complex_abs complex:589
                |          |
                |          |--56.03%--hypot
                |          |          |
                |          |          |--8.45%--__hypot_finite
                |          |          |
                |          |          |--7.62%--__hypot_finite
                |          |          |
                |          |          |--2.29%--__hypot_finite
                |          |          |
                |          |          |--2.24%--__hypot_finite
                |          |          |
                |          |          |--2.06%--__hypot_finite
                |          |          |
                |          |          |--1.81%--__hypot_finite
    ...
    ~~~~~
    
    After:
    
    ~~~~~
       100.00%    38.86%  [.] main
                |
                |--61.14%--main inlining.cpp:14
                |          std::norm<double> complex:664
                |          std::_Norm_helper<true>::_S_do_it<double> complex:654
                |          std::abs<double> complex:597
                |          std::__complex_abs complex:589
                |          |
                |          |--60.29%--hypot
                |          |          |
                |          |           --56.03%--__hypot_finite
                |          |
                |           --0.85%--cabs
    ~~~~~
    Signed-off-by: default avatarMilian Wolff <milian.wolff@kdab.com>
    Reviewed-by: default avatarJiri Olsa <jolsa@redhat.com>
    Reviewed-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Yao Jin <yao.jin@linux.intel.com>
    Link: http://lkml.kernel.org/r/20171009203310.17362-7-milian.wolff@kdab.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    cbe50f61
callchain.c 34.8 KB