mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-08-09 06:14:34 +02:00
Add a workload that runs X threads that run a unique function named "named_threads_thread[x]" which performs a multiplication in a loop for Y loops. Each thread sets its name to "thread[x]". This can be used to test that processor trace decoding handles concurrent threads correctly and the correct symbols and thread names are assigned to samples. Signed-off-by: James Clark <james.clark@linaro.org> Cc: Amir Ayupov <aaupov@meta.com> Cc: Ian Rogers <irogers@google.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Jonathan Corbet <corbet@lwn.net> Cc: Leo Yan <leo.yan@arm.com> Cc: Mike Leach <mike.leach@arm.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paschalis Mpeis <Paschalis.Mpeis@arm.com> Cc: Shuah Khan <skhan@linuxfoundation.org> Cc: Suzuki Poulouse <suzuki.poulose@arm.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
88 lines
2.4 KiB
Plaintext
88 lines
2.4 KiB
Plaintext
perf-test(1)
|
|
============
|
|
|
|
NAME
|
|
----
|
|
perf-test - Runs sanity tests.
|
|
|
|
SYNOPSIS
|
|
--------
|
|
[verse]
|
|
'perf test [<options>] [{list <test-name-fragment>|[<test-name-fragments>|<test-numbers>]}]'
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
This command does assorted sanity tests, initially through linked routines but
|
|
also will look for a directory with more tests in the form of scripts.
|
|
|
|
To get a list of available tests use 'perf test list', specifying a test name
|
|
fragment will show all tests that have it.
|
|
|
|
To run just specific tests, inform test name fragments or the numbers obtained
|
|
from 'perf test list'.
|
|
|
|
OPTIONS
|
|
-------
|
|
-s::
|
|
--skip::
|
|
Tests to skip (comma separated numeric list).
|
|
|
|
-v::
|
|
-vv::
|
|
-vvv::
|
|
--verbose::
|
|
With a single '-v', verbose level 1, only failing test output
|
|
is displayed. With '-vv' and higher all test output is shown.
|
|
|
|
-S::
|
|
--sequential::
|
|
Run all tests one after the other. By default "exclusive"
|
|
tests are run sequentially, but other tests are run in
|
|
parallel to speed execution.
|
|
|
|
-r::
|
|
--runs-per-test::
|
|
Run each test the given number of times, by default once. This
|
|
option can be useful to determine if a test is flaky.
|
|
|
|
-F::
|
|
--dont-fork::
|
|
Do not fork child for each test, run all tests within single process, this
|
|
sets sequential mode.
|
|
|
|
--dso::
|
|
Specify a DSO for the "Symbols" test.
|
|
|
|
-w::
|
|
--workload=::
|
|
Run a built-in workload, to list them use '--list-workloads', current
|
|
ones include: noploop, thloop, leafloop, sqrtloop, brstack, datasym,
|
|
context_switch_loop, deterministic, named_threads and landlock.
|
|
|
|
Used with the shell script regression tests.
|
|
|
|
Some accept an extra parameter:
|
|
|
|
seconds: leafloop, noploop, sqrtloop, thloop
|
|
nrloops: brstack, context_switch_loop
|
|
|
|
'named_threads' accepts the number of threads and the number of loops to
|
|
do in each thread.
|
|
|
|
The datasym, landlock and deterministic workloads don't accept any.
|
|
|
|
--list-workloads::
|
|
List the available workloads to use with -w/--workload.
|
|
|
|
--record-ctl=fifo:ctl-fifo[,ack-fifo]::
|
|
This option is used to communicate with a perf record session in order
|
|
to control the recording scope to only the workload and avoid recording
|
|
setup and teardown code. When specifying this option, the same FIFO path
|
|
must be specified in the record session via:
|
|
|
|
perf record -D -1 --control=fifo:ctl-fifo[,ack-fifo] ...
|
|
|
|
Perf test sends 'enable' and 'disable' commands through ctl-fifo to
|
|
control event recording. If 'ack-fifo' is provided, the workload runner
|
|
waits for an 'ack' response after each command.
|