[igt-dev] [PATCH i-g-t v3 0/3] lib/xe_spin: introduced fixed duration xe_spin

Marcin Bernatowicz marcin.bernatowicz at linux.intel.com
Tue Sep 5 14:23:26 UTC 2023


Introduced struct xe_spin_opts for xe_spin initialization,
adjusted tests to new xe_spin_init signature.

Extended spinner with fixed duration capability. It allows
to prepare fixed duration (ex. 10ms) workloads and take workloads/second
measurements, a handy utility for scheduling tests.

Basic test for xe_spin with fixed duration.

v2: - added asserts in div64_u64_round_up, duration_to_ctx_ticks,
      simplified loop_addr (Zbyszek)
    - added xe_spin_init_opts macro (Zbyszek)
    - corrected patch title (Kamil)
    - Added assert for expected spinner duration. (Zbyszek)
    A median of 5x100ms spins duration is computed, which should
    satisfy CI runs, although better accuracy is achieved with
    disabled logging (echo 0 > /sys/module/drm/parameters/debug).

v3: - extracted xe_spin_opts to separate patch (Kamil)
    - div64_u64_round_up assert on overflow (Kamil)
    - enum indentation cleanup in xe_spin.c (Kamil)

Signed-off-by: Marcin Bernatowicz <marcin.bernatowicz at linux.intel.com>

Marcin Bernatowicz (3):
  lib/xe_spin: xe_spin_opts for xe_spin initialization
  lib/xe_spin: fixed duration xe_spin capability
  tests/xe_spin_batch: spin-fixed-duration

 lib/xe/xe_spin.c               | 123 ++++++++++++++++++++++++++++-----
 lib/xe/xe_spin.h               |  27 +++++++-
 tests/intel/xe_dma_buf_sync.c  |   6 +-
 tests/intel/xe_exec_balancer.c |   9 ++-
 tests/intel/xe_exec_reset.c    |  24 ++++---
 tests/intel/xe_exec_threads.c  |   7 +-
 tests/intel/xe_spin_batch.c    |  72 +++++++++++++++++++
 tests/intel/xe_vm.c            |   7 +-
 8 files changed, 231 insertions(+), 44 deletions(-)

-- 
2.30.2



More information about the igt-dev mailing list