Re: [PATCH v7 2/6] perf record: Get the first sample time and last sample time
From: Jin, Yao
Date: Thu Jan 04 2018 - 20:15:11 EST
On 1/5/2018 3:09 AM, Arnaldo Carvalho de Melo wrote:
Em Fri, Dec 08, 2017 at 09:13:42PM +0800, Jin Yao escreveu:
In the default 'perf record' configuration, all samples are processed,
to create the HEADER_BUILD_ID table. 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().
Later, at post processing time, perf report/script will fetch
the time from perf file header.
So, at this point I was expecting that that record would be present on
the perf.data file:
[acme@jouet perf]$ perf record --timestamp-boundary sleep 1
Cannot read kernel map
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.001 MB perf.data (7 samples) ]
[acme@jouet perf]$ perf report -D | grep PERF_RECORD_SAMPLE | wc -l
7
[acme@jouet perf]$ perf report -D | grep PERF_RECORD_SAMPLE_TIME
[acme@jouet perf]$
What am I doing wrong?
To clarify, this is with just the first two patches in this series
applied.
- Arnaldo
Hi Arnaldo,
The timestamp boundary information is saved in perf file header.
So if we want to look at them, we need to add '--header' in perf report.
For example,
root@skl:/tmp# perf report -D --header | grep 'time of'
# time of first sample : 248333.706656
# time of last sample : 248357.215328
Thanks
Jin Yao