Re: [PATCH] perf stat: Fix shadow stats for clock events

From: Ravi Bangoria
Date: Tue Nov 27 2018 - 03:20:31 EST




On 11/16/18 7:05 PM, Jiri Olsa wrote:
> On Fri, Nov 16, 2018 at 09:58:43AM +0530, Ravi Bangoria wrote:
>> Commit 0aa802a79469 ("perf stat: Get rid of extra clock display
>> function") introduced scale and unit for clock events. Thus,
>> perf_stat__update_shadow_stats() now saves scaled values of
>> clock events in msecs, instead of original nsecs. But while
>> calculating values of shadow stats we still consider clock
>> event values in nsecs. This results in a wrong shadow stat
>> values. Ex,
>>
>> # ./perf stat -e task-clock,cycles ls
>> <SNIP>
>> 2.60 msec task-clock:u # 0.877 CPUs utilized
>> 2,430,564 cycles:u # 1215282.000 GHz
>>
>> Fix this by saving original nsec values for clock events in
>> perf_stat__update_shadow_stats(). After patch:
>>
>> # ./perf stat -e task-clock,cycles ls
>> <SNIP>
>> 3.14 msec task-clock:u # 0.839 CPUs utilized
>> 3,094,528 cycles:u # 0.985 GHz
>>
>> Reported-by: Anton Blanchard <anton@xxxxxxxxx>
>> Suggested-by: Jiri Olsa <jolsa@xxxxxxxxxx>
>> Fixes: 0aa802a79469 ("perf stat: Get rid of extra clock display function")
>> Signed-off-by: Ravi Bangoria <ravi.bangoria@xxxxxxxxxxxxx>
>
> Reviewed-by: Jiri Olsa <jolsa@xxxxxxxxxx>

Hi Arnaldo, Please pull this.

Thanks.