Re: [PATCH v6 7/7] perf diff: Support hot streams comparison
Em Sat, Sep 19, 2020 at 12:41:35PM +0800, Jin, Yao escreveu: > Hi Arnaldo, > > On 9/18/2020 4:26 AM, Arnaldo Carvalho de Melo wrote: > > Em Fri, Sep 11, 2020 at 04:03:53PM +0800, Jin Yao escreveu: > > > This patch enables perf-diff with "--stream" option. > > > > > > "--stream": Enable hot streams comparison > > > > > > Now let's see examples. > > > > > > perf record -b ... Generate perf.data.old with branch data > > > perf record -b ... Generate perf.data with branch data > > > perf diff --stream > > > > > > [ Matched hot streams ] > > > > > > hot chain pair 1: > > > cycles: 1, hits: 27.77% cycles: 1, hits: > > > 9.24% > > > --- > > > -- > > >main div.c:39 main > > > div.c:39 > > >main div.c:44 main > > > div.c:44 > > > > > > hot chain pair 2: > > > cycles: 34, hits: 20.06%cycles: 27, hits: > > > 16.98% > > > --- > > > -- > > >__random_r random_r.c:360 __random_r > > > random_r.c:360 > > > > Would it be interesting to get the associated source code and show right > > below > > these file:number lines? > > > > - Arnaldo > > > > I'm thinking we can implement this function in callchain_list__sym_name(), > and then all callchain functionality will benefit from it. While that looks > to be another patchset. :) Sure, after we go thru the process of merging the current one. > Thanks > Jin Yao -- - Arnaldo
Re: [PATCH v6 7/7] perf diff: Support hot streams comparison
Hi Arnaldo, On 9/18/2020 4:26 AM, Arnaldo Carvalho de Melo wrote: Em Fri, Sep 11, 2020 at 04:03:53PM +0800, Jin Yao escreveu: This patch enables perf-diff with "--stream" option. "--stream": Enable hot streams comparison Now let's see examples. perf record -b ... Generate perf.data.old with branch data perf record -b ... Generate perf.data with branch data perf diff --stream [ Matched hot streams ] hot chain pair 1: cycles: 1, hits: 27.77% cycles: 1, hits: 9.24% --- -- main div.c:39 main div.c:39 main div.c:44 main div.c:44 hot chain pair 2: cycles: 34, hits: 20.06%cycles: 27, hits: 16.98% --- -- __random_r random_r.c:360 __random_r random_r.c:360 Would it be interesting to get the associated source code and show right below these file:number lines? - Arnaldo I'm thinking we can implement this function in callchain_list__sym_name(), and then all callchain functionality will benefit from it. While that looks to be another patchset. :) Thanks Jin Yao
Re: [PATCH v6 7/7] perf diff: Support hot streams comparison
Hi Arnaldo, On 9/18/2020 4:26 AM, Arnaldo Carvalho de Melo wrote: Em Fri, Sep 11, 2020 at 04:03:53PM +0800, Jin Yao escreveu: This patch enables perf-diff with "--stream" option. "--stream": Enable hot streams comparison Now let's see examples. perf record -b ... Generate perf.data.old with branch data perf record -b ... Generate perf.data with branch data perf diff --stream [ Matched hot streams ] hot chain pair 1: cycles: 1, hits: 27.77% cycles: 1, hits: 9.24% --- -- main div.c:39 main div.c:39 main div.c:44 main div.c:44 hot chain pair 2: cycles: 34, hits: 20.06%cycles: 27, hits: 16.98% --- -- __random_r random_r.c:360 __random_r random_r.c:360 Would it be interesting to get the associated source code and show right below these file:number lines? - Arnaldo Yes, that would be better. Let me think about the implementation. Thanks Jin Yao
Re: [PATCH v6 7/7] perf diff: Support hot streams comparison
Em Fri, Sep 11, 2020 at 04:03:53PM +0800, Jin Yao escreveu: > This patch enables perf-diff with "--stream" option. > > "--stream": Enable hot streams comparison > > Now let's see examples. > > perf record -b ... Generate perf.data.old with branch data > perf record -b ... Generate perf.data with branch data > perf diff --stream > > [ Matched hot streams ] > > hot chain pair 1: > cycles: 1, hits: 27.77% cycles: 1, hits: 9.24% > --- -- > main div.c:39 main div.c:39 > main div.c:44 main div.c:44 > > hot chain pair 2: >cycles: 34, hits: 20.06%cycles: 27, hits: 16.98% > --- -- > __random_r random_r.c:360 __random_r random_r.c:360 Would it be interesting to get the associated source code and show right below these file:number lines? - Arnaldo > __random_r random_r.c:388 __random_r random_r.c:388 > __random_r random_r.c:388 __random_r random_r.c:388 > __random_r random_r.c:380 __random_r random_r.c:380 > __random_r random_r.c:357 __random_r random_r.c:357 > __random random.c:293 __random random.c:293 > __random random.c:293 __random random.c:293 > __random random.c:291 __random random.c:291 > __random random.c:291 __random random.c:291 > __random random.c:291 __random random.c:291 > __random random.c:288 __random random.c:288 > rand rand.c:27 rand rand.c:27 > rand rand.c:26 rand rand.c:26 >rand@pltrand@plt >rand@pltrand@plt > compute_flag div.c:25 compute_flag div.c:25 > compute_flag div.c:22 compute_flag div.c:22 > main div.c:40 main div.c:40 > main div.c:40 main div.c:40 > main div.c:39 main div.c:39 > > hot chain pair 3: > cycles: 9, hits: 4.48% cycles: 6, hits: 4.51% > --- -- > __random_r random_r.c:360 __random_r random_r.c:360 > __random_r random_r.c:388 __random_r random_r.c:388 > __random_r random_r.c:388 __random_r random_r.c:388 > __random_r random_r.c:380 __random_r random_r.c:380 > > [ Hot streams in old perf data only ] > > hot chain 1: > cycles: 18, hits: 6.75% > -- > __random_r random_r.c:360 > __random_r random_r.c:388 > __random_r random_r.c:388 > __random_r random_r.c:380 > __random_r random_r.c:357 > __random random.c:293 > __random random.c:293 > __random random.c:291 > __random random.c:291 > __random random.c:291 > __random random.c:288 > rand rand.c:27 > rand rand.c:26 >rand@plt >rand@plt > compute_flag div.c:25 > compute_flag div.c:22 > main div.c:40 > > hot chain 2: > cycles: 29, hits: 2.78% > -- > compute_flag div.c:22 > main div.c:40 > main div.c:40 > main div.c:39 > > [ Hot streams in new perf data only ] > > hot chain 1: > cycles: 4, hits: 4.54% > -- > main div.c:42 > compute_flag div.c:28 > > hot chain 2: > cycles: 5, hits: 3.51% > -- > main div.c:39 > main div.c:44 > main div.c:42 > compute_flag div.c:28 > >