All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: "Jin, Yao" <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>,
	jolsa@kernel.org, peterz@infradead.org, mingo@redhat.com,
	alexander.shishkin@linux.intel.com, Linux-kernel@vger.kernel.org,
	ak@linux.intel.com, kan.liang@intel.com, yao.jin@intel.com
Subject: Re: [PATCH v5 2/6] perf record: Get the first sample time and last sample time
Date: Mon, 23 Oct 2017 16:05:50 -0300	[thread overview]
Message-ID: <20171023190550.GA7045@kernel.org> (raw)
In-Reply-To: <6652168b-70e0-d643-d0a1-64fb310e57b1@linux.intel.com>

Em Tue, Oct 24, 2017 at 01:38:26AM +0800, Jin, Yao escreveu:
> 
> 
> On 10/23/2017 11:04 PM, Jiri Olsa wrote:
> > On Sat, Oct 21, 2017 at 07:27:50AM +0800, Jin Yao wrote:
> > > In perf record, it's walked on all samples yet. So it's very easy to get
> > > the first/last samples and save the time to perf file header via the
> > > function write_sample_time().
> > > 
> > > In later, perf report/script will fetch the time from perf file header.
> > > 
> > > Change log:
> > > -----------
> > > v5: There is an issue that the sample walking can only work when
> > >      '--buildid-all' is not enabled. So we need to let the walking
> > >      be able to work even if '--buildid-all' is enabled and let the
> > >      processing skips the dso hit marking for this case.
> > > 
> > >      At first, I want to provide a new option "--record-time-boundaries".
> > >      While after consideration, I think a new option is not very
> > >      necessary.
> > > 
> > > v3: Remove the definitions of first_sample_time and last_sample_time
> > >      from struct record and directly save them in perf_evlist.
> > > 
> > > Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
> > > ---
> > >   tools/perf/builtin-record.c | 20 ++++++++++++--------
> > >   1 file changed, 12 insertions(+), 8 deletions(-)
> > > 
> > > diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
> > > index a6cbf16..bd711e8 100644
> > > --- a/tools/perf/builtin-record.c
> > > +++ b/tools/perf/builtin-record.c
> > > @@ -391,8 +391,19 @@ static int process_sample_event(struct perf_tool *tool,
> > >   {
> > >   	struct record *rec = container_of(tool, struct record, tool);
> > > -	rec->samples++;
> > > +	if (rec->evlist->first_sample_time == 0)
> > > +		rec->evlist->first_sample_time = sample->time;
> > > +
> > > +	rec->evlist->last_sample_time = sample->time;
> > > +
> > > +	/*
> > > +	 * If --buildid-all is given, it marks all DSO regardless of hits,
> > > +	 * so no need to process this sample.
> > > +	 */
> > > +	if (rec->buildid_all)
> > > +		return 0;
> > > +	rec->samples++;
> > >   	return build_id__mark_dso_hit(tool, event, sample, evsel, machine);
> > >   }
> > > @@ -415,13 +426,6 @@ static int process_buildids(struct record *rec)
> > >   	 */
> > >   	symbol_conf.ignore_vmlinux_buildid = true;
> > > -	/*
> > > -	 * If --buildid-all is given, it marks all DSO regardless of hits,
> > > -	 * so no need to process samples.
> > > -	 */
> > > -	if (rec->buildid_all)
> > > -		rec->tool.sample = NULL;
> > 
> > hum, could you still unset the sample if there's no time given?
> > and keep the speed in this case..
> > 
> > jirka
> > 
> 
> Oh, yes, I should do that. Thanks Jiri!
> 
> Hi Arnaldo, do you have any comment for v5?

I'll try to look at it, but don't that hold v6, I'd say :-\

- Arnaldo
 
> I will prepare v6 for adding fixes according to all comments.
> 
> Thanks
> Jin Yao

  reply	other threads:[~2017-10-23 19:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-20 23:27 [PATCH v5 0/6] perf report/script: Support percent and multiple range in --time option Jin Yao
2017-10-20 23:27 ` [PATCH v5 1/6] perf header: Record first sample time and last sample time in perf file header Jin Yao
2017-10-20 23:27 ` [PATCH v5 2/6] perf record: Get the first sample time and last sample time Jin Yao
2017-10-23 15:04   ` Jiri Olsa
2017-10-23 17:38     ` Jin, Yao
2017-10-23 19:05       ` Arnaldo Carvalho de Melo [this message]
2017-10-24  2:03     ` Jin, Yao
2017-10-24  7:16       ` Jiri Olsa
2017-10-24  7:29         ` Jin, Yao
2017-11-03 13:00         ` Jin, Yao
2017-11-03 16:29         ` Arnaldo Carvalho de Melo
2017-11-03 21:33           ` Jin, Yao
2017-11-04 10:24           ` Jiri Olsa
2017-11-06  0:28             ` Jin, Yao
2017-10-20 23:27 ` [PATCH v5 3/6] perf util: Create function to parse time percent Jin Yao
2017-10-20 23:27 ` [PATCH v5 4/6] perf util: Create function to perform multiple time range checking Jin Yao
2017-10-20 23:27 ` [PATCH v5 5/6] perf report: support time percent and multiple time ranges Jin Yao
2017-10-20 23:27 ` [PATCH v5 6/6] perf script: " Jin Yao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171023190550.GA7045@kernel.org \
    --to=acme@kernel.org \
    --cc=Linux-kernel@vger.kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=jolsa@kernel.org \
    --cc=jolsa@redhat.com \
    --cc=kan.liang@intel.com \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=yao.jin@intel.com \
    --cc=yao.jin@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.