From: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
To: igt-dev@lists.freedesktop.org
Cc: "Marcin Bernatowicz" <marcin.bernatowicz@linux.intel.com>,
"Adam Miszczak" <adam.miszczak@linux.intel.com>,
"Jakub Kolakowski" <jakub1.kolakowski@intel.com>,
"Lukasz Laguna" <lukasz.laguna@intel.com>,
"Michał Wajdeczko" <michal.wajdeczko@intel.com>,
"Michał Winiarski" <michal.winiarski@intel.com>,
"Narasimha C V" <narasimha.c.v@intel.com>,
"Piotr Piórkowski" <piotr.piorkowski@intel.com>,
"Satyanarayana K V P" <satyanarayana.k.v.p@intel.com>,
"Tomasz Lis" <tomasz.lis@intel.com>
Subject: [PATCH v2 i-g-t 0/5] Add SR-IOV provisioning scheduling attributes and tests
Date: Wed, 12 Feb 2025 19:47:52 +0100 [thread overview]
Message-ID: <20250212184757.586071-1-marcin.bernatowicz@linux.intel.com> (raw)
Add helper functions to get and set SR-IOV provisioning scheduling
attributes. These functions provide an interface for accessing
provisioning attributes such as execution quantum, preemption timeout,
schedule if idle policy, schedule priority, and engine reset policy.
Include both returning and asserting versions to handle errors
appropriately.
Introduce a function to validate default SR-IOV scheduling attributes
for VFs and PF. This function skips the test if non-default attributes
are detected. The default attributes verified include:
- exec_quantum_ms set to 0 (infinite execution quantum)
- preempt_timeout_us set to 0 (infinite preemption timeout)
- sched_if_idle set to false
- reset_engine set to false
- sched_priority set to XE_SRIOV_SCHED_PRIORITY_LOW
Implement equal-throughput validation for VFs (PF is treated as VF0)
with identical workloads and scheduling settings.
Scheduling settings are adjusted to consider execution quantum, job
duration, and the number of VFs, while adhering to timeout constraints
and aiming for a sufficient number of job repeats. This approach
balances overall test duration with accuracy.
Verify the occurrence of engine resets
when non-preemptible workloads surpass the combined
duration of execution quantum and preemption timeout.
v2:
- After review corrections (update description, remove magic numbers,
remove debug message for consistency with the remaining code,
remove short command line options) (Lukasz)
- Refactor scheduling parameter preparation for reuse in other tests
- Replace hardcoded JOB_TIMEOUT_MS with sysfs_get_job_timeout_ms() to
dynamically retrieve the value.
Cc: Adam Miszczak <adam.miszczak@linux.intel.com>
Cc: Jakub Kolakowski <jakub1.kolakowski@intel.com>
Cc: Lukasz Laguna <lukasz.laguna@intel.com>
Cc: Michał Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Narasimha C V <narasimha.c.v@intel.com>
Cc: Piotr Piórkowski <piotr.piorkowski@intel.com>
Cc: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
Cc: Tomasz Lis <tomasz.lis@intel.com>
Marcin Bernatowicz (5):
lib/xe/xe_sriov_provisioning: Add scheduling attributes accessors
lib/xe/xe_sriov_provisioning: Add helper to check default scheduling
attributes
tests/xe_sriov_scheduling: VF equal-throughput validation
tests/xe_sriov_scheduling: nonpreempt-engine-resets subtest
tests/xe_sriov_scheduling: Get job timeout from sysfs
lib/xe/xe_sriov_provisioning.c | 410 ++++++++++++++-
lib/xe/xe_sriov_provisioning.h | 55 +-
tests/intel/xe_sriov_scheduling.c | 821 ++++++++++++++++++++++++++++++
tests/meson.build | 1 +
4 files changed, 1285 insertions(+), 2 deletions(-)
create mode 100644 tests/intel/xe_sriov_scheduling.c
--
2.31.1
next reply other threads:[~2025-02-12 18:48 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-12 18:47 Marcin Bernatowicz [this message]
2025-02-12 18:47 ` [PATCH v2 i-g-t 1/5] lib/xe/xe_sriov_provisioning: Add scheduling attributes accessors Marcin Bernatowicz
2025-02-12 18:47 ` [PATCH v2 i-g-t 2/5] lib/xe/xe_sriov_provisioning: Add helper to check default scheduling attributes Marcin Bernatowicz
2025-02-12 18:47 ` [PATCH v2 i-g-t 3/5] tests/xe_sriov_scheduling: VF equal-throughput validation Marcin Bernatowicz
2025-02-14 14:32 ` Laguna, Lukasz
2025-02-12 18:47 ` [PATCH v2 i-g-t 4/5] tests/xe_sriov_scheduling: nonpreempt-engine-resets subtest Marcin Bernatowicz
2025-02-14 14:32 ` Laguna, Lukasz
2025-02-12 18:47 ` [PATCH v2 i-g-t 5/5] tests/xe_sriov_scheduling: Get job timeout from sysfs Marcin Bernatowicz
2025-02-14 10:21 ` K V P, Satyanarayana
2025-02-14 14:33 ` Laguna, Lukasz
2025-02-13 3:01 ` ✓ i915.CI.BAT: success for Add SR-IOV provisioning scheduling attributes and tests (rev2) Patchwork
2025-02-13 3:38 ` ✓ Xe.CI.BAT: " Patchwork
2025-02-13 12:46 ` ✗ i915.CI.Full: failure " Patchwork
2025-02-13 15:02 ` Bernatowicz, Marcin
2025-02-13 16:51 ` ✗ Xe.CI.Full: " Patchwork
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=20250212184757.586071-1-marcin.bernatowicz@linux.intel.com \
--to=marcin.bernatowicz@linux.intel.com \
--cc=adam.miszczak@linux.intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=jakub1.kolakowski@intel.com \
--cc=lukasz.laguna@intel.com \
--cc=michal.wajdeczko@intel.com \
--cc=michal.winiarski@intel.com \
--cc=narasimha.c.v@intel.com \
--cc=piotr.piorkowski@intel.com \
--cc=satyanarayana.k.v.p@intel.com \
--cc=tomasz.lis@intel.com \
/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