[RFC] Scheduler recorder and playback
panto at antoniou-consulting.com
Wed Apr 4 10:30:38 UTC 2012
There is big difference between threads and processes as far as the kernel
is concerned; both are performed by just a clone syscall, and share or
not address space/fd's etc.
If you want to replay per-process workloads, you can just
record only the activity of the pids of the threads of the process.
In the future I will try to record thread creation but I'm not sure
if the current tracepoints allow to differentiate between a fork
or a thread creation; a new tracepoint might be needed which I explicitly
wanted to avoid.
On Apr 4, 2012, at 12:57 PM, Dmitry Antipov wrote:
> On 04/02/2012 02:15 PM, Pantelis Antoniou wrote:
>>> Example session:
>>> # perf sched record
>>> < run process, etc.>
>>> ^C<- perf ends producing a perf.data file.
>>> # perf sched spr-replay -l
>>> <lists tasks and pids in the trace>
>>> # perf sched spr-replay -s<pid#1> -s<name> -d -n -g
>>> <see the trace program for the processes with pid#1 and named<name>
>>> # perf sched spr-replay -s<pid#1> -g>test.spr
>>> <generates test.spr which contains the program of pid#1>
>>> # perf sched spr-replay -f test.spr -d
>>> <execute the test.spr program>
> Do you have any thoughts on how to replay multithreaded workloads?
> We definitely wants to replay per-process, not per-thread workloads.
More information about the linaro-dev