Re: [PATCH] perf: add new option '--workload-attr' to set workload sched_policy/priority/mask

From: Changbin Du
Date: Fri Jul 14 2023 - 03:19:57 EST


On Fri, Jul 14, 2023 at 10:06:31AM +0300, Adrian Hunter wrote:
> On 13/07/23 11:58, Changbin Du wrote:
> > To get consistent benchmarking results, sometimes we need to set the
> > sched_policy/priority/mask of the workload to reduce system noise.
> >
> > For example, CPU binding is required on big.little system.
> >
> > $ perf stat -r 10 -- taskset -c 0 ls
> >
> > Nevertheless, the 'taskset' is also counted here.
> >
> > To get away of the middleman, this adds a new option '--workload-attr' to
> > do the same jobs for stat and record commands.
> >
> > $ sudo perf stat --workload-attr fifo,40,0x1 -- ls
> >
> > Above will make 'ls' run on CPU #0 with fifo scheduler and realtime
> > priority is 40.
>
> Aren't there ways to set up a process then start perf using -p <pid>
> then let the process continue.
>
By that you need a mechanism to pause the new spawnned process and wait perf to
attach. Or setup the sched properties by the app itself. But sometimes we just
simply want to run the app through and measure some events. With
--workload-attr, we do not need extra setup works.

--
Cheers,
Changbin Du