[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20151021192350.GC32514@kernel.org>
Date: Wed, 21 Oct 2015 16:23:50 -0300
From: Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>
To: Brendan Gregg <brendan.d.gregg@...il.com>
Cc: Chandler Carruth <chandlerc@...il.com>,
Frederic Weisbecker <fweisbec@...il.com>,
Ingo Molnar <mingo@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Adrian Hunter <adrian.hunter@...el.com>,
Borislav Petkov <bp@...e.de>, David Ahern <dsahern@...il.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
Stephane Eranian <eranian@...gle.com>,
Wang Nan <wangnan0@...wei.com>
Subject: Re: [PATCH 13/16] perf callchain: Switch default to
'graph,0.5,caller'
Em Wed, Oct 21, 2015 at 11:28:54AM -0700, Brendan Gregg escreveu:
> On Tue, Oct 20, 2015 at 7:21 PM, Chandler Carruth <chandlerc@...il.com> wrote:
> > Since Arnaldo asked, I thought I should actually try to respond specifically
> > to the question of why I favor the 'caller' view as the default.
> >
> > On Tue, Oct 20, 2015 at 3:06 AM Arnaldo Carvalho de Melo
> > <arnaldo.melo@...il.com> wrote:
> >>
> >> > IMHO changing that order is not a good idea. Unless many users
> >> > complained
> >> > about it.
> >>
> >> Perhaps there are not that many users of callchains because the default
> >> is not what they're used to see?
> >>
> >> Motivation for the change came from a video from Chandler, that
> >> resurfaced the callchain default issue, Chandler?
> >
> >
> > So, first and foremost, thanks for fixing some of my gripes about the
> > usability of the perf tool, I'm super excited about the changes you're
> > making, even if this one isn't among them.
> >
> > I think the default of caller vs. callee is probably the hardest judgement
> > call to make about the right defaults. I can see it going both ways.
> >
> > When profiling my *system*, or a diverse group of programs or tasks, I often
> > find callee useful. Were I a kernel developer, I suspect callee would be
> > *dramatically* more common than caller.
> >
> > For me, what makes the caller view much more frequently desired is that I'm
> > usually profiling a fairly isolated application, or benchmark for an
> > isolated library. While I always start off with some more system-level
> > performance problem, I rarely need a detailed profile to get a reasonable
> > idea of what subsystem to stare at, and then I spend days looking at a
> > relatively isolated reproduction.
> >
> > Anyways, for profiling user-land applications, I suspect from my
> > conversations with users that "caller" is the more common expectation.
> [...]
>
> I would have said callee is the more common expectation, certainly for
> system profilers. I quickly checked various tools to see what their
> defaults are:
>
> callee:
>
> gdb
> lldb
> pstack
> jstack
> perf
> stap
> ktap
> dtrace
> kernel oops message
> jvm crash
> node.js/v8 crash
>
> caller:
>
> python traceback
sysprof -> http://sysprof.com/screen-shot-4.png
>
> Python was the only one I knew off-hand that is caller by default (and
> it includes the text "most recent call last", suggesting the
> developers thought it was necessary to point out that it was
> different). Do you know what tools/profilers/debuggers these users are
> using?
>
> I really think people will be surprised if by default perf prints
> stacks differently to gdb, lldb, oops messages, etc, etc. That may be
> true for a specific developer community (eg, Python), but not for
> system profilers.
>
> Brendan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists