Re: perf stat: Add support to print counts for fixed times

Jiri Olsa
2018-01-24T07:48:19Z

On Wed, Jan 24, 2018 at 03:43:19AM +0100, ufo19890607 wrote:
> From: yuzhoujian <yuzhoujian@didichuxing.com>
>
> Hi Jirka
> And how can you control the output for perf stat, if I don't want to use the
> "sleep" workload, like some user programs. I want to check the "cycles"
> for this program when it just begin to run.
>
> root@node10:/home$ gcc -g -o malloc malloc.c
> root@node10:/home$ ./perf stat -e cycles -I 1000 --times-print 3 ./malloc &
> [1] 32586
> # time counts unit events
> 1.000094153 2,914,162,979 cycles
> 2.000323667 3,062,832,799 cycles
> 3.000443807 3,063,146,609 cycles

yea, we can't do that now.. we have the exat oposit option in record,
because sometimes you want to skip the initialization phase of the
workload.. any special reason why you want to see just the begining?

we can add this, but maybe change the option name a bit

your code now allows this even if it's not in interval mode

[jolsa@krava perf]$ sudo ./perf stat -e cycles -a --times-print 3

Performance counter stats for 'system wide':

1,469,288,467 cycles

3.000502814 seconds time elapsed

I think we should either keep it interval specific:

perf stat -e cycles -I 1000 --interval-count=3

or make the option general and time based:

perf stat -e cycles --time=3000

or maybe both ;-)

thanks,
jirka