Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1294392

Re: Add top down metrics to perf stat v2

From Andi Kleen <andi@firstfloor.org>
Newsgroups linux.kernel
Subject Re: Add top down metrics to perf stat v2
Date 2015-12-18 03:00 +0100
Message-ID <qGSuS-7xL-9@gated-at.bofh.it> (permalink)
References <qG8BH-3aD-1@gated-at.bofh.it> <qGDYR-6sp-1@gated-at.bofh.it> <qGHpM-py-3@gated-at.bofh.it> <qGQjo-6g4-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Thanks for testing.


On Thu, Dec 17, 2015 at 03:31:30PM -0800, Stephane Eranian wrote:
> I would not add a --topdown option but instead a --metric option with arguments
> such that other metrics could be added later:
> 
>    $ perf stat --metrics topdown -I 1000 -a sleep 100
> 
> If you do this, you do not need the --metric-only option

The --metric-only option is useful with other metrics too. For example 
to get concise (and plottable) IPC or TSX abort statistics. See the
examples in the original commit.

However could make --topdown default to --metric-only and add
an option to turn it off. Yes that's probably a better default
for more people, although some people could be annoyed by the
wide output.

> The double --topdown is confusing.

Ok. I was thinking of changing it and adding an extra argument for
the "ignore threshold" behavior. That would also make it more extensible
if we ever add Level 2.

> 
> Why force --per-core when HT is on. I know you you need to aggregate
> per core, but
> you could still display globally. And then if user requests
> --per-core, then display per core.

Global TopDown doesn't make much sense. Suppose you have two programs
running on different cores, one frontend bound and one backend bound.
What would the union of the two mean? And you may well end up
with sums of ratios which are >100%.

The only exception where it's useful is for the single threaded
case (like the toplev --single-thread) option. However it is something
ugly and difficult because the user would need to ensure that there is
nothing active on the sibling thread. So I left it out.

> Same if user specifies --per-socket. I know this requires some more
> plumbing inside perf
> but it would be clearer and simpler to interpret to users.

Same problem as above.

> 
> One bug I found when testing is that if you do with HT-on:
> 
> $ perf stat -a --topdown -I 1000 --metric-only sleep 100
> Then you get data for frontend and backend but nothing for retiring or
> bad speculation.

You see all the columns, but no data in some? 

That's intended: the percentage is only printed when it crosses a
threshold. That's part of the top down specificatio.
 
> I suspect it is because you expect --metric-only to be used only when
> you have the
> double --topdown. That's why I think this double topdown is confusing. If you do
> as I suggest, it will be much simpler.

It works fine with single topdown as far as I can tell.


-Andi
-- 
ak@linux.intel.com -- Speaking for myself only.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Add top down metrics to perf stat v2 Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  [PATCH 07/10] perf, tools, stat: Add extra output of counter values with -v Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  [PATCH 10/10] x86, perf: Add Top Down events to Intel Atom Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  [PATCH 04/10] perf, tools, stat: Scale values by unit before metrics Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  [PATCH 09/10] x86, perf: Add Top Down events to Intel Core Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  [PATCH 03/10] perf, tools, stat: Avoid fractional digits for integer scales Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
    Re: [PATCH 03/10] perf, tools, stat: Avoid fractional digits for  integer scales Stephane Eranian <eranian@google.com> - 2015-12-16 15:30 +0100
  [PATCH 05/10] perf, tools, stat: Basic support for TopDown in perf stat Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
    Re: [PATCH 05/10] perf, tools, stat: Basic support for TopDown in  perf stat Stephane Eranian <eranian@google.com> - 2015-12-16 15:40 +0100
      Re: [PATCH 05/10] perf, tools, stat: Basic support for TopDown in  perf stat Andi Kleen <andi@firstfloor.org> - 2015-12-16 22:30 +0100
        Re: [PATCH 05/10] perf, tools, stat: Basic support for TopDown in  perf stat Stephane Eranian <eranian@google.com> - 2015-12-17 10:30 +0100
          Re: [PATCH 05/10] perf, tools, stat: Basic support for TopDown in  perf stat Andi Kleen <andi@firstfloor.org> - 2015-12-17 15:10 +0100
  [PATCH 08/10] x86, perf: Support sysfs files depending on SMT status Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
    Re: [PATCH 08/10] x86, perf: Support sysfs files depending on SMT  status Peter Zijlstra <peterz@infradead.org> - 2015-12-16 10:00 +0100
    Re: [PATCH 08/10] x86, perf: Support sysfs files depending on SMT status Stephane Eranian <eranian@google.com> - 2015-12-16 13:50 +0100
      Re: [PATCH 08/10] x86, perf: Support sysfs files depending on SMT  status Andi Kleen <andi@firstfloor.org> - 2015-12-16 17:30 +0100
  [PATCH 01/10] perf, tools: Dont stop PMU parsing on alias parse error Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
    Re: [PATCH 01/10] perf, tools: Dont stop PMU parsing on alias parse  error Jiri Olsa <jolsa@redhat.com> - 2015-12-21 17:10 +0100
  [PATCH 02/10] perf, tools, stat: Force --per-core mode for .agg-per-core aliases Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
    Re: [PATCH 02/10] perf, tools, stat: Force --per-core mode for  .agg-per-core aliases Stephane Eranian <eranian@google.com> - 2015-12-16 15:20 +0100
    Re: [PATCH 02/10] perf, tools, stat: Force --per-core mode for  .agg-per-core aliases Jiri Olsa <jolsa@redhat.com> - 2015-12-21 17:20 +0100
    Re: [PATCH 02/10] perf, tools, stat: Force --per-core mode for  .agg-per-core aliases Jiri Olsa <jolsa@redhat.com> - 2015-12-21 17:20 +0100
  [PATCH 06/10] perf, tools, stat: Add computation of TopDown formulas Andi Kleen <andi@firstfloor.org> - 2015-12-16 02:00 +0100
  Re: Add top down metrics to perf stat v2 Stephane Eranian <eranian@google.com> - 2015-12-17 11:30 +0100
    Re: Add top down metrics to perf stat v2 Andi Kleen <andi@firstfloor.org> - 2015-12-17 15:10 +0100
      Re: Add top down metrics to perf stat v2 Stephane Eranian <eranian@google.com> - 2015-12-18 00:40 +0100
        Re: Add top down metrics to perf stat v2 Andi Kleen <andi@firstfloor.org> - 2015-12-18 03:00 +0100
          Re: Add top down metrics to perf stat v2 Stephane Eranian <eranian@google.com> - 2015-12-18 10:40 +0100
            Re: Add top down metrics to perf stat v2 Andi Kleen <andi@firstfloor.org> - 2015-12-18 22:40 +0100

csiph-web