lkml.org 
[lkml]   [2017]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v1 1/4] perf annotate: create a new hists to manage multiple events samples
    From
    Date


    On 9/8/2017 9:43 PM, Arnaldo Carvalho de Melo wrote:
    > Em Wed, Aug 16, 2017 at 06:18:33PM +0800, Jin Yao escreveu:
    >> An issue is found during using perf annotate.
    >>
    >> perf record -e cycles,branches ...
    >> perf annotate main --stdio
    >>
    >> The result only shows cycles. It should show both cycles and
    >> branches on the left side. It works with "--group", but need
    >> this to work even without groups.
    >>
    >> In current design, the hists is per event. So we need a new
    >> hists to manage the samples for multiple events and use a new
    >> hist_event data structure to save the map/symbol information
    >> for per event.
    > Humm, why do we need another hists? Don't we have one per evsel, don't
    > we have a evlist from where to get all of those evsels, can't we just
    > use that to add one column per evsel?
    >
    > - Arnaldo
    >
    >

    Hi Arnaldo,

    I'm considering a case.

    Suppose we sample 2 events ("branches" and "cache-misses"). The samples
    of "branches" are hit in function A and the samples of "cache-misses"
    are hit in function B.

    The branches evsel has one hists and cache-misses evsel has another hists.

    The hists of branches evsel has one hist-entry which stands for the
    function A symbol. The hists of cache-misses evsel has one hist-entry
    which stands for the function B symbol.

    If we start to show the instructions in function B from cache-misses
    evsel, we will lose the function A.

    Because even if we get the branches evsel from the link in cache-misses
    evsel, but the function A is before function B and function B has been
    displayed yet, so the function A is lost.

    Considering the number of events can be greater than 2, the code will be
    much more complicated. So using a global hists should be an easy solution.

    Thanks
    Jin Yao

    \
     
     \ /
      Last update: 2017-09-11 03:34    [W:3.514 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site