From: "Jin, Yao" <yao.jin@linux.intel.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: acme@kernel.org, jolsa@kernel.org, peterz@infradead.org,
mingo@redhat.com, alexander.shishkin@linux.intel.com,
Linux-kernel@vger.kernel.org, ak@linux.intel.com,
kan.liang@intel.com, yao.jin@intel.com
Subject: Re: [PATCH v4] perf stat: Show percore counts in per CPU output
Date: Tue, 18 Feb 2020 09:02:52 +0800 [thread overview]
Message-ID: <9c16e98e-aa9e-8879-0690-990a5dcda303@linux.intel.com> (raw)
In-Reply-To: <20200217110629.GD157041@krava>
On 2/17/2020 7:06 PM, Jiri Olsa wrote:
> On Mon, Feb 17, 2020 at 09:22:57AM +0800, Jin, Yao wrote:
>>
>>
>> On 2/17/2020 6:54 AM, Jiri Olsa wrote:
>>> On Fri, Feb 14, 2020 at 04:04:52PM +0800, Jin Yao wrote:
>>>
>>> SNIP
>>>
>>>> CPU1 1,009,312 cpu/event=cpu-cycles,percore/
>>>> CPU2 2,784,072 cpu/event=cpu-cycles,percore/
>>>> CPU3 2,427,922 cpu/event=cpu-cycles,percore/
>>>> CPU4 2,752,148 cpu/event=cpu-cycles,percore/
>>>> CPU6 2,784,072 cpu/event=cpu-cycles,percore/
>>>> CPU7 2,427,922 cpu/event=cpu-cycles,percore/
>>>>
>>>> 1.001416041 seconds time elapsed
>>>>
>>>> v4:
>>>> ---
>>>> Ravi Bangoria reports an issue in v3. Once we offline a CPU,
>>>> the output is not correct. The issue is we should use the cpu
>>>> idx in print_percore_thread rather than using the cpu value.
>>>
>>> Acked-by: Jiri Olsa <jolsa@kernel.org>
>>>
>>
>> Thanks so much for ACK this patch. :)
>>
>>> btw, there's slight misalignment in -I output, but not due
>>> to your change, it's there for some time now, and probably
>>> in other agregation outputs as well:
>>>
>>>
>>> $ sudo ./perf stat -e cpu/event=cpu-cycles/ -a -A -I 1000
>>> # time CPU counts unit events
>>> 1.000224464 CPU0 7,251,151 cpu/event=cpu-cycles/
>>> 1.000224464 CPU1 21,614,946 cpu/event=cpu-cycles/
>>> 1.000224464 CPU2 30,812,097 cpu/event=cpu-cycles/
>>>
>>> should be (extra space after CPUX):
>>>
>>> 1.000224464 CPU2 30,812,097 cpu/event=cpu-cycles/
>>>
>>> I'll put it on my TODO, but if you're welcome to check on it ;-)
>>>
>>> thanks,
>>> jirka
>>>
>>
>> I have a simple fix for this misalignment issue.
>>
>> diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
>> index bc31fccc0057..95b29c9cba36 100644
>> --- a/tools/perf/util/stat-display.c
>> +++ b/tools/perf/util/stat-display.c
>> @@ -114,11 +114,11 @@ static void aggr_printout(struct perf_stat_config
>> *config,
>> fprintf(config->output, "S%d-D%d-C%*d%s",
>> cpu_map__id_to_socket(id),
>> cpu_map__id_to_die(id),
>> - config->csv_output ? 0 : -5,
>> + config->csv_output ? 0 : -3,
>> cpu_map__id_to_cpu(id), config->csv_sep);
>> } else {
>> - fprintf(config->output, "CPU%*d%s ",
>> - config->csv_output ? 0 : -5,
>> + fprintf(config->output, "CPU%*d%s",
>> + config->csv_output ? 0 : -7,
>> evsel__cpus(evsel)->map[id],
>> config->csv_sep);
>
> I guess that's ok, will that work with higher (3 digit) cpu numbers?
>
> jirka
>
Yes, it works with hundreds of CPU. I have tested with that case.
BTW, do you need me to post a separate patch or you will add this fix in
your patch series?
Thanks
Jin Yao
>> }
>>
>> Following command lines are tested OK.
>>
>> perf stat -e cpu/event=cpu-cycles/ -I 1000
>> perf stat -e cpu/event=cpu-cycles/ -a -I 1000
>> perf stat -e cpu/event=cpu-cycles/ -a -A -I 1000
>> perf stat -e cpu/event=cpu-cycles,percore/ -a -A -I 1000
>> perf stat -e cpu/event=cpu-cycles,percore/ -a -A --percore-show-thread -I
>> 1000
>>
>> Could you help to look at that?
>>
>> Thanks
>> Jin Yao
>>
>
next prev parent reply other threads:[~2020-02-18 1:02 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-14 8:04 [PATCH v4] perf stat: Show percore counts in per CPU output Jin Yao
2020-02-16 22:54 ` Jiri Olsa
2020-02-17 1:22 ` Jin, Yao
2020-02-17 11:06 ` Jiri Olsa
2020-02-18 1:02 ` Jin, Yao [this message]
2020-02-18 6:14 ` Jiri Olsa
2020-02-17 14:45 ` Arnaldo Carvalho de Melo
2020-03-19 14:10 ` [tip: perf/core] " tip-bot2 for Jin Yao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9c16e98e-aa9e-8879-0690-990a5dcda303@linux.intel.com \
--to=yao.jin@linux.intel.com \
--cc=Linux-kernel@vger.kernel.org \
--cc=acme@kernel.org \
--cc=ak@linux.intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=jolsa@kernel.org \
--cc=jolsa@redhat.com \
--cc=kan.liang@intel.com \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=yao.jin@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).