lkml.org 
[lkml]   [2021]   [Jan]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: [PATCH v5] perf stat: Fix wrong skipping for per-die aggregation
From
Date


On 1/13/2021 7:07 PM, Jiri Olsa wrote:
> On Wed, Jan 13, 2021 at 09:56:31AM +0800, Jin Yao wrote:
>
> SNIP
>
>>
>> root@lkp-csl-2ap4 ~# ./perf stat -a -I 1000 -e llc_misses.mem_read --per-die -- sleep 5
>> 1.001586691 S0-D0 1 1229440 Bytes llc_misses.mem_read
>> 1.001586691 S0-D1 1 976832 Bytes llc_misses.mem_read
>> 1.001586691 S1-D0 1 938304 Bytes llc_misses.mem_read
>> 1.001586691 S1-D1 1 1227328 Bytes llc_misses.mem_read
>> 2.003776312 S0-D0 1 1586752 Bytes llc_misses.mem_read
>> 2.003776312 S0-D1 1 875392 Bytes llc_misses.mem_read
>> 2.003776312 S1-D0 1 855616 Bytes llc_misses.mem_read
>> 2.003776312 S1-D1 1 949376 Bytes llc_misses.mem_read
>> 3.006512788 S0-D0 1 1338880 Bytes llc_misses.mem_read
>> 3.006512788 S0-D1 1 920064 Bytes llc_misses.mem_read
>> 3.006512788 S1-D0 1 877184 Bytes llc_misses.mem_read
>> 3.006512788 S1-D1 1 1020736 Bytes llc_misses.mem_read
>> 4.008895291 S0-D0 1 926592 Bytes llc_misses.mem_read
>> 4.008895291 S0-D1 1 906368 Bytes llc_misses.mem_read
>> 4.008895291 S1-D0 1 892224 Bytes llc_misses.mem_read
>> 4.008895291 S1-D1 1 987712 Bytes llc_misses.mem_read
>> 5.001590993 S0-D0 1 962624 Bytes llc_misses.mem_read
>> 5.001590993 S0-D1 1 912512 Bytes llc_misses.mem_read
>> 5.001590993 S1-D0 1 891200 Bytes llc_misses.mem_read
>> 5.001590993 S1-D1 1 978432 Bytes llc_misses.mem_read
>>
>> On no-die system, die_id is 0, actually it's hashmap(socket,0), original behavior
>> is not changed.
>>
>> Reported-by: Huang Ying <ying.huang@intel.com>
>> Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
>> ---
>> v5:
>> Hash key is changed to die_id << 32 | socket.
>> In pkg_id_hash, return (int64_t)key & 0xffffffff; actually it's socket.
>
> seems ok, but I'm getting python test fail:
>
> $ sudo ./perf test python -v
> 19: 'import perf' in python :
> --- start ---
> test child forked, pid 1352066
> python usage test: "echo "import sys ; sys.path.append('python'); import perf" | '/usr/bin/python2' "
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> ImportError: python/perf.so: undefined symbol: hashmap__free
> test child finished with -1
> ---- end ----
> 'import perf' in python: FAILED!
>
> jirka
>

Seems I need to add hashmap.c to python-ext-sources. It surprised me that it was not in it yet. :(

diff --git a/tools/perf/util/python-ext-sources b/tools/perf/util/python-ext-sources
index a9d9c142eb7c..266874913dbb 100644
--- a/tools/perf/util/python-ext-sources
+++ b/tools/perf/util/python-ext-sources
@@ -35,3 +35,4 @@ util/symbol_fprintf.c
util/units.c
util/affinity.c
util/rwsem.c
+util/hashmap.c
root@kbl-ppc:~# ./perf test 19
19: 'import perf' in python : Ok

Thanks
Jin Yao

\
 
 \ /
  Last update: 2021-01-14 02:20    [W:0.549 / U:0.860 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site