[igt-dev] [PATCH i-g-t 0/7] Add few multi-GPU subtests with the help of igt_multi_fork macro

Kamil Konieczny kamil.konieczny at linux.intel.com
Fri Dec 2 20:56:58 UTC 2022


Add one simple macro igt_multi_fork() and new helpers in
igt_core to enable running tests on two or more GPUs in parallel.
To test this idea I added few multigpu-* subtests to gem_basic,
gem_close_race and gem_exec_gttfill.
It is open-coded for ease of debug but can be wrapped into
additional macro if this idea will get acceptance.

v1:
added igt_multi_gpu() fork
added log for opened device extension from Mauro with
  some modifications
added tests for fork_dyn so it works as igt_fork
added prefix log to help debug problems
rework gttfill multigpu-basic subtest

See some logs below.

Cc: Anna Karas <anna.karas at intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Cc: Mauro Carvalho Chehab <mauro.chehab at linux.intel.com>
Cc: Petri Latvala <petri.latvala at intel.com>

Starting subtest: multigpu-basic
<g:0> Setup 1025 batches in 3398.88ms
<g:1> Setup 1025 batches in 3392.46ms
[..skipped..]
<g:0> Total: 33 cycles
<g:1> Total: 33 cycles
Subtest multigpu-basic: SUCCESS (36.248s)

sudo build/tests/gem_basic --run multigpu-create-close --device=pci:vendor=Intel,device=discrete,card=all
IGT-Version: 1.26-NO-GIT (x86_64) (Linux: 5.15.47-LGCI-DII_6436-g2b47d14d98d6+ x86_64)
Starting subtest: multigpu-create-close
<g:0> Testing creating and closing an object.
<g:1> Testing creating and closing an object.
Subtest multigpu-create-close: SUCCESS (0.043s)

Kamil Konieczny (6):
  lib/igt_core: add igt_multi_fork for parallel tests
  lib/igt_core: add prefix to logging
  lib/tests/igt_fork: add tests for igt_multi_fork
  tests/i915/gem_basic: add multigpu-create-close subtest
  tests/i915/gem_exec_gttfill: add new subtest multigpu-basic
  tests/i915/gem_close_race: add multiGPU subtests

Mauro Carvalho Chehab (1):
  lib/igt_core: store GPU string or opened device name

 lib/drmtest.c                 |   4 +-
 lib/igt_core.c                | 235 +++++++++++++++++++++++++++++++---
 lib/igt_core.h                |  27 ++++
 lib/tests/igt_fork.c          |  93 ++++++++++----
 tests/i915/gem_basic.c        |  24 +++-
 tests/i915/gem_close_race.c   |  54 ++++++++
 tests/i915/gem_exec_gttfill.c |  32 ++++-
 7 files changed, 422 insertions(+), 47 deletions(-)

-- 
2.34.1



More information about the igt-dev mailing list