Re: [PATCH] x86: Run checksumming in parallel accross multiple alu's

From: Ingo Molnar
Date: Tue Oct 29 2013 - 08:52:42 EST



* Neil Horman <nhorman@xxxxxxxxxxxxx> wrote:

> On Tue, Oct 29, 2013 at 12:30:31PM +0100, Ingo Molnar wrote:
> >
> > * Neil Horman <nhorman@xxxxxxxxxxxxx> wrote:
> >
> > > Sure it was this:
> > > for i in `seq 0 1 3`
> > > do
> > > echo $i > /sys/module/csum_test/parameters/module_test_mode
> > > taskset -c 0 perf stat --repeat 20 -C 0 -ddd perf bench sched messaging -- /root/test.sh
> > > done >> counters.txt 2>&1
> > >
> > > where test.sh is:
> > > #!/bin/sh
> > > echo 1 > /sys/module/csum_test/parameters/test_fire
> >
> > What does '-- /root/test.sh' do?
> >
> > Unless I'm missing something, the line above will run:
> >
> > perf bench sched messaging -- /root/test.sh
> >
> > which should be equivalent to:
> >
> > perf bench sched messaging
> >
> > i.e. /root/test.sh won't be run.
>
> According to the perf man page, I'm supposed to be able to use --
> to separate perf command line parameters from the command I want
> to run. And it definately executed test.sh, I added an echo to
> stdout in there as a test run and observed them get captured in
> counters.txt

Well, '--' can be used to delineate the command portion for cases
where it's ambiguous.

Here's it's unambiguous though. This:

perf stat --repeat 20 -C 0 -ddd perf bench sched messaging -- /root/test.sh

stops parsing a valid option after the -ddd option, so in theory it
should execute 'perf bench sched messaging -- /root/test.sh' where
'-- /root/test.sh' is simply a parameter to 'perf bench' and is thus
ignored.

The message output you provided seems to suggest that to be the
case:

Performance counter stats for 'perf bench sched messaging -- bash -c echo 1 > /sys/module/csum_test/parameters/test_fire' (20 runs):

See how the command executed by perf stat was 'perf bench ...'.

Did you want to run:

perf stat --repeat 20 -C 0 -ddd /root/test.sh

?

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/