On Thu, Aug 20, 2020 at 09:45:28AM -0700, [email protected] wrote: > From: Kan Liang <[email protected]> > > The kernel patches have been merged into the tip's perf/core branch. > The patch set is on top of commit 2cb5383b30d4 ("perf/x86/intel: Support > per-thread RDPMC TopDown metrics") of the tip's perf/core branch. > > The changes for the perf tool include: > - Extend --topdown option to support per thread TopDown metrics > - Support sample-read topdown metric group > - Add a complete document for the TopDown usage. > > Ice Lake has support for measuring the level 1 TopDown metrics > directly in hardware. This is implemented by an additional METRICS > register, and a new Fixed Counter 3 that measures pipeline SLOTS. > > New in Icelake > - Do not require generic counters. This allows to collect TopDown always > in addition to other events. > - Measuring TopDown per thread/process instead of only per core > > For the Ice Lake implementation of performance metrics, the values in > PERF_METRICS MSR are derived from fixed counter 3. Software should start > both registers, PERF_METRICS and fixed counter 3, from zero. > Additionally, software is recommended to periodically clear both > registers in order to maintain accurate measurements. The latter is > required for certain scenarios that involve sampling metrics at high > rates. Software should always write fixed counter 3 before write to > PERF_METRICS. > > IA32_PERF_GLOBAL_STATUS. OVF_PERF_METRICS[48]: If this bit is set, > it indicates that some PERF_METRICS-related counter has overflowed and > a PMI is triggered. Software has to synchronize, e.g. re-start, > PERF_METRICS as well as fixed counter 3. Otherwise, PERF_METRICS may > return invalid values. > > Limitation > - To get accurate result and avoid reading the METRICS register multiple > times, the TopDown metrics events and SLOTS event have to be in the > same group. > - METRICS and SLOTS registers have to be cleared after each read by SW. > That is to prevent the lose of precision. > - Cannot do sampling read SLOTS and TopDown metric events > > Please refer SDM Vol3, 18.3.9.3 Performance Metrics for the details of > TopDown metrics. > > Andi Kleen (2): > perf stat: Support new per thread TopDown metrics > perf, tools: Add documentation for topdown metrics > > Kan Liang (2): > perf tools: Rename group to topdown > perf record: Support sample-read topdown metric group
I don't have Ice lake to actualy check, but it looks good Acked-by: Jiri Olsa <[email protected]> thanks, jirka

