Re: [PATCH v2 3/5] perf report: Sort by sampled cycles percent per block for stdio

From: Jiri Olsa
Date: Wed Oct 16 2019 - 08:53:29 EST


On Wed, Oct 16, 2019 at 06:51:07PM +0800, Jin, Yao wrote:
>
>
> On 10/16/2019 6:15 PM, Jiri Olsa wrote:
> > On Tue, Oct 15, 2019 at 10:53:18PM +0800, Jin, Yao wrote:
> >
> > SNIP
> >
> > > > > +static struct block_header_column{
> > > > > + const char *name;
> > > > > + int width;
> > > > > +} block_columns[PERF_HPP_REPORT__BLOCK_MAX_INDEX] = {
> > > > > + [PERF_HPP_REPORT__BLOCK_TOTAL_CYCLES_COV] = {
> > > > > + .name = "Sampled Cycles%",
> > > > > + .width = 15,
> > > > > + },
> > > > > + [PERF_HPP_REPORT__BLOCK_LBR_CYCLES] = {
> > > > > + .name = "Sampled Cycles",
> > > > > + .width = 14,
> > > > > + },
> > > > > + [PERF_HPP_REPORT__BLOCK_CYCLES_PCT] = {
> > > > > + .name = "Avg Cycles%",
> > > > > + .width = 11,
> > > > > + },
> > > > > + [PERF_HPP_REPORT__BLOCK_AVG_CYCLES] = {
> > > > > + .name = "Avg Cycles",
> > > > > + .width = 10,
> > > > > + },
> > > > > + [PERF_HPP_REPORT__BLOCK_RANGE] = {
> > > > > + .name = "[Program Block Range]",
> > > > > + .width = 70,
> > > > > + },
> > > > > + [PERF_HPP_REPORT__BLOCK_DSO] = {
> > > > > + .name = "Shared Object",
> > > > > + .width = 20,
> > > > > + }
> > > > > };
> > > >
> > > > so we already have support for multiple columns,
> > > > why don't you add those as 'struct sort_entry' objects?
> > > >
> > >
> > > For 'struct sort_entry' objects, do you mean I should reuse the "sort_dso"
> > > which has been implemented yet in util/sort.c?
> > >
> > > For other columns, it looks we can't reuse the existing sort_entry objects.
> >
> > I did not mean reuse, just add new sort entries
> > to current sort framework
> >
>
> Does it seem like what the c2c does?

well c2c has its own data output with multiline column titles,
hence it has its own separate dimension stuff, but your code
output is within the standard perf report right? single column
output.. why couldn't you use just sort_entry ?

jirka