linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Anshuman Khandual <anshuman.khandual@arm.com>
To: linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, will@kernel.org,
	catalin.marinas@arm.com, mark.rutland@arm.com
Cc: Anshuman Khandual <anshuman.khandual@arm.com>,
	Mark Brown <broonie@kernel.org>,
	James Clark <james.clark@arm.com>, Rob Herring <robh@kernel.org>,
	Marc Zyngier <maz@kernel.org>,
	Suzuki Poulose <suzuki.poulose@arm.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	linux-perf-users@vger.kernel.org
Subject: [PATCH V16 6/8] perf: test: Speed up running brstack test on an Arm model
Date: Thu, 25 Jan 2024 15:11:17 +0530	[thread overview]
Message-ID: <20240125094119.2542332-7-anshuman.khandual@arm.com> (raw)
In-Reply-To: <20240125094119.2542332-1-anshuman.khandual@arm.com>

From: James Clark <james.clark@arm.com>

The test runs quite slowly in the model, so replace "xargs -n1" with
"tr ' ' '\n'" which does the same thing but in single digit minutes
instead of double digit minutes.

Also reduce the number of loops in the test application. Unfortunately
this causes intermittent failures on x86, presumably because the
sampling interval is too big to pickup any loops, so keep it the same
there.

Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: linux-perf-users@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: James Clark <james.clark@arm.com>
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
---
 tools/perf/tests/shell/test_brstack.sh | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/tools/perf/tests/shell/test_brstack.sh b/tools/perf/tests/shell/test_brstack.sh
index 5f14d0cb013f..5ea64d0c4a6f 100755
--- a/tools/perf/tests/shell/test_brstack.sh
+++ b/tools/perf/tests/shell/test_brstack.sh
@@ -18,7 +18,6 @@ fi
 skip_test_missing_symbol brstack_bench
 
 TMPDIR=$(mktemp -d /tmp/__perf_test.program.XXXXX)
-TESTPROG="perf test -w brstack"
 
 cleanup() {
 	rm -rf $TMPDIR
@@ -26,11 +25,21 @@ cleanup() {
 
 trap cleanup EXIT TERM INT
 
+is_arm64() {
+	uname -m | grep -q aarch64
+}
+
+if is_arm64; then
+	TESTPROG="perf test -w brstack 5000"
+else
+	TESTPROG="perf test -w brstack"
+fi
+
 test_user_branches() {
 	echo "Testing user branch stack sampling"
 
 	perf record -o $TMPDIR/perf.data --branch-filter any,save_type,u -- ${TESTPROG} > /dev/null 2>&1
-	perf script -i $TMPDIR/perf.data --fields brstacksym | xargs -n1 > $TMPDIR/perf.script
+	perf script -i $TMPDIR/perf.data --fields brstacksym | tr ' ' '\n' > $TMPDIR/perf.script
 
 	# example of branch entries:
 	# 	brstack_foo+0x14/brstack_bar+0x40/P/-/-/0/CALL
@@ -59,7 +68,7 @@ test_filter() {
 	echo "Testing branch stack filtering permutation ($test_filter_filter,$test_filter_expect)"
 
 	perf record -o $TMPDIR/perf.data --branch-filter $test_filter_filter,save_type,u -- ${TESTPROG} > /dev/null 2>&1
-	perf script -i $TMPDIR/perf.data --fields brstack | xargs -n1 > $TMPDIR/perf.script
+	perf script -i $TMPDIR/perf.data --fields brstack | tr ' ' '\n' > $TMPDIR/perf.script
 
 	# fail if we find any branch type that doesn't match any of the expected ones
 	# also consider UNKNOWN branch types (-)
-- 
2.25.1


  parent reply	other threads:[~2024-01-25  9:42 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-25  9:41 [PATCH V16 0/8] arm64/perf: Enable branch stack sampling Anshuman Khandual
2024-01-25  9:41 ` [PATCH V16 1/8] arm64/sysreg: Add BRBE registers and fields Anshuman Khandual
2024-01-25 14:20   ` Mark Brown
2024-02-21 13:52   ` Mark Rutland
2024-02-21 13:59     ` Mark Brown
2024-02-21 14:05       ` Mark Rutland
2024-02-21 14:07         ` Mark Brown
2024-02-23  5:28           ` Anshuman Khandual
2024-02-23 13:31             ` Mark Brown
2024-02-23  6:36     ` Anshuman Khandual
2024-01-25  9:41 ` [PATCH V16 2/8] KVM: arm64: Prevent guest accesses into BRBE system registers/instructions Anshuman Khandual
2024-01-29 12:15   ` Suzuki K Poulose
2024-01-30  3:40     ` Anshuman Khandual
2024-02-21 14:01   ` Mark Rutland
2024-02-23  7:28     ` Anshuman Khandual
2024-02-27 10:04       ` Mark Rutland
2024-02-27 11:13         ` Anshuman Khandual
2024-02-29 11:45           ` Suzuki K Poulose
2024-02-29 12:50             ` Mark Rutland
2024-02-29 15:43               ` Suzuki K Poulose
2024-03-01  7:46               ` Anshuman Khandual
2024-03-01 12:49                 ` Mark Rutland
2024-01-25  9:41 ` [PATCH V16 3/8] drivers: perf: arm_pmuv3: Enable branch stack sampling framework Anshuman Khandual
2024-01-25 13:44   ` Suzuki K Poulose
2024-01-29  4:35     ` Anshuman Khandual
2024-02-21 17:25   ` Mark Rutland
2024-03-01  5:37     ` Anshuman Khandual
2024-03-01 13:52       ` Mark Rutland
2024-01-25  9:41 ` [PATCH V16 4/8] drivers: perf: arm_pmuv3: Enable branch stack sampling via FEAT_BRBE Anshuman Khandual
2024-02-21 18:23   ` Mark Rutland
2024-02-28  8:11     ` Anshuman Khandual
2024-02-28 11:52       ` Mark Rutland
2024-02-29  8:55         ` Anshuman Khandual
2024-01-25  9:41 ` [PATCH V16 5/8] KVM: arm64: nvhe: Disable branch generation in nVHE guests Anshuman Khandual
2024-01-29 12:20   ` Suzuki K Poulose
2024-01-30  3:41     ` Anshuman Khandual
2024-02-29 18:40   ` Marc Zyngier
2024-03-01  2:20     ` Anshuman Khandual
2024-01-25  9:41 ` Anshuman Khandual [this message]
2024-01-25  9:41 ` [PATCH V16 7/8] perf: test: Remove empty lines from branch filter test output Anshuman Khandual
2024-01-25  9:41 ` [PATCH V16 8/8] perf: test: Extend branch stack sampling test for Arm64 BRBE Anshuman Khandual

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240125094119.2542332-7-anshuman.khandual@arm.com \
    --to=anshuman.khandual@arm.com \
    --cc=acme@kernel.org \
    --cc=broonie@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=james.clark@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=maz@kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=robh@kernel.org \
    --cc=suzuki.poulose@arm.com \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).