[PATCH i-g-t v7 0/8] introduce Xe multigpu and other multi-GPU helpers
Kamil Konieczny
kamil.konieczny at linux.intel.com
Fri Feb 2 15:35:09 UTC 2024
Introduce some multi-gpu function helpers and macros. Change in drmtest
base opening function allows it to use __drm_open_driver_another(N, ...)
out of order, for example on board with three discrete GPUs:
__drm_open_driver_another(2, DRIVER_INTEL);
__drm_open_driver_another(0, DRIVER_INTEL);
Second solution for Xe is based on filtered views. Both allows to
quickly write tests. There is still drawback of not printing in
children logs <g:gpu-number> for first opened device. I renamed
lib from lib/i915/igt_multigpu.* to lib/intel_multigu.* as I do not
know of any non Intel developer using igt for such tests.
v2: corrected two patches which introduced multigpu lib (Dominik)
rebased patch intoducing Xe multigpu macro, corrected description
v3: corrected include in first multigpu patch (Dominik)
fixed typo (Dominik), refactoring code with Xe and gem macro (Kamil)
v4: corrected typo in macro (Dominik)
v5: removed cached names and relaxing checks for filtered devices
in 3/8 patch, added Janusz to cc in 1/8...5/8 (Kamil)
v6: extended description of patches 1 and 2, fixed bug in 3/8 (Janusz)
improved usage of _is_already_opened() (Kamil)
v7: restored prohibition of opening the same card at other index (Janusz)
Cc: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>
Dominik Karol Piątkowski (4):
lib/igt_device_scan: Introduce filtering out non-PCI devices
lib/drmtest: Introduced drm_open_driver_another
lib/intel_multigpu: Introduce library for multi-GPU scenarios
lib/intel_multigpu: Introduced gem_multigpu_count_class and
igt_multi_fork_foreach_gpu
Kamil Konieczny (4):
lib/drmtest: allow opening cards out of order
lib/intel_multigpu: Add xe_multi_fork_foreach_gpu
tests/intel/xe_exec_basic: add multigpu subtests
tests/intel/gem_mmap: add basic multi-GPU subtest
lib/drmtest.c | 100 +++++++++++++++++++++-----
lib/drmtest.h | 1 +
lib/igt_device_scan.c | 21 ++++++
lib/igt_device_scan.h | 2 +
lib/intel_multigpu.c | 135 ++++++++++++++++++++++++++++++++++++
lib/intel_multigpu.h | 36 ++++++++++
lib/meson.build | 1 +
tests/intel/gem_mmap.c | 77 ++++++++++++--------
tests/intel/xe_exec_basic.c | 36 ++++++++++
9 files changed, 363 insertions(+), 46 deletions(-)
create mode 100644 lib/intel_multigpu.c
create mode 100644 lib/intel_multigpu.h
--
2.42.0
More information about the igt-dev
mailing list