2022-06-15 19:24:41

by Namhyung Kim

[permalink] [raw]
Subject: [PATCH] perf test: Add ARM SPE system wide test

In the past it had a problem not setting the pid/tid on the sample
correctly when system-wide mode is used. Although it's fixed now it'd
be nice if we have a test case for it.

Cc: German Gomez <[email protected]>
Cc: Leo Yan <[email protected]>
Signed-off-by: Namhyung Kim <[email protected]>
---
tools/perf/tests/shell/test_arm_spe.sh | 15 +++++++++++++++
1 file changed, 15 insertions(+)

diff --git a/tools/perf/tests/shell/test_arm_spe.sh b/tools/perf/tests/shell/test_arm_spe.sh
index e59044edc406..b9c588ae393b 100755
--- a/tools/perf/tests/shell/test_arm_spe.sh
+++ b/tools/perf/tests/shell/test_arm_spe.sh
@@ -23,6 +23,7 @@ glb_err=0
cleanup_files()
{
rm -f ${perfdata}
+ rm -f ${perfdata}.old
exit $glb_err
}

@@ -85,5 +86,19 @@ arm_spe_snapshot_test() {
arm_spe_report "SPE snapshot testing" $err
}

+arm_spe_system_wide_test() {
+ echo "Recording trace with system-wide mode $perfdata"
+ perf record -o ${perfdata} -e arm_spe// -a \
+ -- dd if=/dev/zero of=/dev/null count=100000 > /dev/null 2>&1
+
+ perf_script_samples dd &&
+ perf_report_samples dd
+
+ err=$?
+ arm_spe_report "SPE system-wide testing" $err
+}
+
arm_spe_snapshot_test
+arm_spe_system_wide_test
+
exit $glb_err
--
2.36.1.476.g0c4daa206d-goog


2022-06-16 10:35:23

by German Gomez

[permalink] [raw]
Subject: Re: [PATCH] perf test: Add ARM SPE system wide test

Thanks for the patch, Namhyung

On 15/06/2022 20:07, Namhyung Kim wrote:
> In the past it had a problem not setting the pid/tid on the sample
> correctly when system-wide mode is used. Although it's fixed now it'd
> be nice if we have a test case for it.
>
> Cc: German Gomez <[email protected]>
> Cc: Leo Yan <[email protected]>
> Signed-off-by: Namhyung Kim <[email protected]>
> ---
> tools/perf/tests/shell/test_arm_spe.sh | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/tools/perf/tests/shell/test_arm_spe.sh b/tools/perf/tests/shell/test_arm_spe.sh
> index e59044edc406..b9c588ae393b 100755
> --- a/tools/perf/tests/shell/test_arm_spe.sh
> +++ b/tools/perf/tests/shell/test_arm_spe.sh
> @@ -23,6 +23,7 @@ glb_err=0
> cleanup_files()
> {
> rm -f ${perfdata}
> + rm -f ${perfdata}.old
> exit $glb_err
> }
>
> @@ -85,5 +86,19 @@ arm_spe_snapshot_test() {
> arm_spe_report "SPE snapshot testing" $err
> }
>
> +arm_spe_system_wide_test() {
> + echo "Recording trace with system-wide mode $perfdata"
> + perf record -o ${perfdata} -e arm_spe// -a \
> + -- dd if=/dev/zero of=/dev/null count=100000 > /dev/null 2>&1
> +

Should we skip if we don't have privileges for CPU tracing? (attached diff)

German

> + perf_script_samples dd &&
> + perf_report_samples dd
> +
> + err=$?
> + arm_spe_report "SPE system-wide testing" $err
> +}
> +
> arm_spe_snapshot_test
> +arm_spe_system_wide_test
> +
> exit $glb_err


Attachments:
diff (798.00 B)

2022-06-16 16:44:51

by Namhyung Kim

[permalink] [raw]
Subject: Re: [PATCH] perf test: Add ARM SPE system wide test

Hello,

On Thu, Jun 16, 2022 at 3:12 AM German Gomez <[email protected]> wrote:
>
> Thanks for the patch, Namhyung
>
> On 15/06/2022 20:07, Namhyung Kim wrote:
> > In the past it had a problem not setting the pid/tid on the sample
> > correctly when system-wide mode is used. Although it's fixed now it'd
> > be nice if we have a test case for it.
> >
> > Cc: German Gomez <[email protected]>
> > Cc: Leo Yan <[email protected]>
> > Signed-off-by: Namhyung Kim <[email protected]>
> > ---
> > tools/perf/tests/shell/test_arm_spe.sh | 15 +++++++++++++++
> > 1 file changed, 15 insertions(+)
> >
> > diff --git a/tools/perf/tests/shell/test_arm_spe.sh b/tools/perf/tests/shell/test_arm_spe.sh
> > index e59044edc406..b9c588ae393b 100755
> > --- a/tools/perf/tests/shell/test_arm_spe.sh
> > +++ b/tools/perf/tests/shell/test_arm_spe.sh
> > @@ -23,6 +23,7 @@ glb_err=0
> > cleanup_files()
> > {
> > rm -f ${perfdata}
> > + rm -f ${perfdata}.old
> > exit $glb_err
> > }
> >
> > @@ -85,5 +86,19 @@ arm_spe_snapshot_test() {
> > arm_spe_report "SPE snapshot testing" $err
> > }
> >
> > +arm_spe_system_wide_test() {
> > + echo "Recording trace with system-wide mode $perfdata"
> > + perf record -o ${perfdata} -e arm_spe// -a \
> > + -- dd if=/dev/zero of=/dev/null count=100000 > /dev/null 2>&1
> > +
>
> Should we skip if we don't have privileges for CPU tracing? (attached diff)

Oh, you're right. I'll squash it to the patch.

Thanks,
Namhyung


>
> > + perf_script_samples dd &&
> > + perf_report_samples dd
> > +
> > + err=$?
> > + arm_spe_report "SPE system-wide testing" $err
> > +}
> > +
> > arm_spe_snapshot_test
> > +arm_spe_system_wide_test
> > +
> > exit $glb_err