[igt-dev] [PATCH i-g-t 5/6] i915/perf_*: better document tests
Kamil Konieczny
kamil.konieczny at linux.intel.com
Fri May 19 15:52:22 UTC 2023
Hi Mauro,
it seems that there are problem with mixing description into
functionality, see below.
On 2023-05-17 at 17:11:09 +0200, Mauro Carvalho Chehab wrote:
> From: Mauro Carvalho Chehab <mchehab at kernel.org>
>
> Merge data from some ancillary internal documentation to improve
> i915 perf test descriptions.
>
> This patch was auto-generated via script.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab at kernel.org>
> ---
> tests/i915/perf.c | 126 +++++++++++++++++++++++++------
> tests/i915/perf_pmu.c | 171 +++++++++++++++++++++++++++++++++---------
> 2 files changed, 238 insertions(+), 59 deletions(-)
>
> diff --git a/tests/i915/perf.c b/tests/i915/perf.c
> index 1b1c39aafb8b..f22be7f6eaba 100644
> --- a/tests/i915/perf.c
> +++ b/tests/i915/perf.c
> @@ -49,23 +49,39 @@
> * TEST: perf
> * Description: Test the i915 perf metrics streaming interface
> * Run type: FULL
> + * Test category: Perf
> *
> * SUBTEST: blocking
> * Description: Test blocking read with default hrtimer frequency
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test blocking read with default hrtimer frequency
-------------------- ^
Is it really functionality ? I ask because it seems more like
description, see next comment.
> *
> * SUBTEST: blocking-parameterized
> * Description: Test blocking read with different hrtimer frequencies
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test blocking read with different hrtimer frequencies
> *
> * SUBTEST: buffer-fill
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: create-destroy-userspace-config
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: disabled-read-error
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: enable-disable
> * Feature: oa
> @@ -84,7 +100,10 @@
> *
> * SUBTEST: gen12-invalid-class-instance
> * Description: Verify invalid class instance
------------------ ^
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Verify invalid class instance
-------------------- ^
These are the same strings.
Regards,
Kamil
> *
> * SUBTEST: gen12-mi-rpc
> * Description: Test MI REPORT PERF COUNT for Gen 12
> @@ -92,7 +111,10 @@
> *
> * SUBTEST: gen12-oa-tlb-invalidate
> * Description: Test OA TLB invalidate
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test OA TLB invalidate
> *
> * SUBTEST: gen12-unprivileged-single-ctx-counters
> * Description: Measure performance for a specific context using OAR in Gen 12
> @@ -110,84 +132,138 @@
> * Feature: oa
> *
> * SUBTEST: i915-ref-count
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-create-userspace-config
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-oa-exponent
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-oa-format-id
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-oa-metric-set-id
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-open-flags
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: invalid-remove-userspace-config
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: low-oa-exponent-permissions
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: mi-rpc
> * Feature: oa
> *
> * SUBTEST: missing-sample-flags
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: non-sampling-read-error
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: non-system-wide-paranoid
> * Feature: oa
> *
> * SUBTEST: non-zero-reason
> * Description: Test that reason field in OA reports is never 0 on Gen8+
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test that reason field in OA reports is never 0 on Gen8+
> *
> * SUBTEST: oa-exponents
> * Feature: oa
> *
> * SUBTEST: oa-formats
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: per-context-mode-unprivileged
> * Feature: oa, obsolete
> *
> * SUBTEST: polling
> * Description: Test polled read with default hrtimer frequency
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test polled read with default hrtimer frequency
> *
> * SUBTEST: polling-parameterized
> * Description: Test polled read with different hrtimer frequencies
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test polled read with different hrtimer frequencies
> *
> * SUBTEST: polling-small-buf
> * Description: Test polled read with buffer size smaller than available data
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test polled read with buffer size smaller than available data
> *
> * SUBTEST: rc6-disable
> * Feature: oa
> *
> * SUBTEST: short-reads
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: stress-open-close
> * Description: Stress tests opening & closing the i915-perf stream in a busy loop
> * Feature: oa
> *
> * SUBTEST: sysctl-defaults
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> *
> * SUBTEST: unprivileged-single-ctx-counters
> * Feature: oa, obsolete
> *
> * SUBTEST: whitelisted-registers-userspace-config
> - * Feature: oa
> + * Feature:
> + * oa
> + * i915 streaming interface
> + * Functionality: Test the i915 perf metrics streaming interface
> */
>
> IGT_TEST_DESCRIPTION("Test the i915 perf metrics streaming interface");
> diff --git a/tests/i915/perf_pmu.c b/tests/i915/perf_pmu.c
> index bedadbe92797..653b5e99c78c 100644
> --- a/tests/i915/perf_pmu.c
> +++ b/tests/i915/perf_pmu.c
> @@ -53,54 +53,103 @@
> * TEST: perf pmu
> * Description: Test the i915 pmu perf interface
> * Run type: FULL
> + * Test category: Perf
> *
> * SUBTEST: all-busy-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: all-busy-idle-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: busy
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu is busy when there a workload by reading engine busyness pmu counters
> *
> * SUBTEST: busy-accuracy-2
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: busy-accuracy-50
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: busy-accuracy-98
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: busy-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu all engines report busy when there is a workload by reading engine busyness pmu counters
> *
> * SUBTEST: busy-double-start
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: busy-hang
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure there is no hanf when all engines are busy
> *
> * SUBTEST: busy-idle
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu engine reports idle when there is no workload
> *
> * SUBTEST: busy-idle-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu all engine reports idle when there is no workload
> *
> * SUBTEST: busy-idle-no-semaphores
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu idle through engine business pmu counters
> *
> * SUBTEST: busy-no-semaphores
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu busyness through engine business pmu counters
> *
> * SUBTEST: busy-start
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu busyness through engine business pmu counters
> *
> * SUBTEST: cpu-hotplug
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: enable-race
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: event-wait
> * Feature: obsolete, pmu
> @@ -109,52 +158,97 @@
> * Feature: pmu
> *
> * SUBTEST: frequency
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Read requested freq and actual frequency via PMU within specified time interval for any given workload changes
> *
> * SUBTEST: frequency-idle
> * Feature: pmu
> *
> * SUBTEST: gt-awake
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Setup workload on all engines,measure gt awake time via pmu
> *
> * SUBTEST: idle
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
> *
> * SUBTEST: idle-no-semaphores
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to ensure gpu is idle when there is no workload by reading engine busyness pmu counters
> *
> * SUBTEST: init-busy
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu busyness init through pmu perf interface
> *
> * SUBTEST: init-sema
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu busyness init through pmu perf interface
> *
> * SUBTEST: init-wait
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test to verify gpu busyness init through pmu perf interface
> *
> * SUBTEST: interrupts
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: interrupts-sync
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: invalid-init
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Tests that i915 PMU corectly errors out in invalid initialization
> *
> * SUBTEST: invalid-open
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: module-unload
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: most-busy-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: most-busy-idle-check-all
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: multi-client
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: pmu-read
> * Description: Verify i915 pmu dir exists and read all events
> @@ -179,13 +273,22 @@
> * Feature: pmu
> *
> * SUBTEST: semaphore-busy
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: semaphore-wait
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> *
> * SUBTEST: semaphore-wait-idle
> - * Feature: pmu
> + * Feature:
> + * pmu
> + * i915 pmu perf interface
> + * Functionality: Test the i915 pmu perf interface
> */
>
> IGT_TEST_DESCRIPTION("Test the i915 pmu perf interface");
> --
> 2.40.1
>
More information about the igt-dev
mailing list