Messages in this thread | | | Date | Tue, 21 Mar 2017 15:48:36 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH 10/13] perf, tools, stat: Output JSON MetricExpr metric |
| |
On Mon, Mar 20, 2017 at 01:17:08PM -0700, Andi Kleen wrote: > From: Andi Kleen <ak@linux.intel.com> > > Add generic infrastructure to perf stat to output ratios for "MetricExpr" > entries in the event lists. Many events are more useful as ratios > than in raw form, typically some count in relation to total ticks. > > Transfer the MetricExpr information from the alias to the evsel. > > We mark the events that need to be collected for MetricExpr, and also > link the events using them with a pointer. The code is careful > to always prefer the right event in the same group to minimize > multiplexing errors. At the moment only a single relation is supported. > > Then add a rblist to the stat shadow code that remembers stats based > on the cpu and context. > > Then finally update and retrieve and print these values similarly to the > existing hardcoded perf metrics. We use the simple expression parser > added earlier to evaluate the expression. > > Normally we just output the result without further commentary, > but for --metric-only this would lead to empty columns. So for this > case use the original event as description. > > There is no attempt to automatically add the MetricExpr event, > if it is missing, however we suggest it to the user, because > the user tool doesn't have enough information to reliably > construct a group that is guaranteed to schedule. So we leave > that to the user. > > % perf stat -a -I 1000 -e '{unc_p_clockticks,unc_p_freq_max_os_cycles}' > 1.000147889 800,085,181 unc_p_clockticks > 1.000147889 93,126,241 unc_p_freq_max_os_cycles # 11.6 > 2.000448381 800,218,217 unc_p_clockticks > 2.000448381 142,516,095 unc_p_freq_max_os_cycles # 17.8 > 3.000639852 800,243,057 unc_p_clockticks > 3.000639852 162,292,689 unc_p_freq_max_os_cycles # 20.3 > > % perf stat -a -I 1000 -e '{unc_p_clockticks,unc_p_freq_max_os_cycles}' --metric-only > 1.000127077 0.9 > 2.000301436 0.7 > 3.000456379 0.0
The comment above suggest I'll see 'original event as description' in this example??
jirka
| |