* [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark
@ 2024-06-25 13:08 Nirmoy Das
2024-06-25 14:11 ` ✓ CI.xeBAT: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) Patchwork
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Nirmoy Das @ 2024-06-25 13:08 UTC (permalink / raw)
To: igt-dev; +Cc: kamil.konieczny, Nirmoy Das
Add basic_inst_benchmark to benchmark this basic operation
for BO sizes to get basic understanding how long it takes
bind a BO and run simple GPU command on it.
This not a CI test but rather for developer to identify various
bottleneck/regression in BO binding.
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
---
tests/intel/xe_exec_store.c | 112 ++++++++++++++++++++++++++++++------
1 file changed, 94 insertions(+), 18 deletions(-)
diff --git a/tests/intel/xe_exec_store.c b/tests/intel/xe_exec_store.c
index c872c22d5..aaabdbec3 100644
--- a/tests/intel/xe_exec_store.c
+++ b/tests/intel/xe_exec_store.c
@@ -93,15 +93,10 @@ static void persistance_batch(struct data *data, uint64_t addr)
data->addr = batch_addr;
}
-/**
- * SUBTEST: basic-store
- * Description: Basic test to verify store dword.
- * SUBTEST: basic-cond-batch
- * Description: Basic test to verify cond batch end instruction.
- * SUBTEST: basic-all
- * Description: Test to verify store dword on all available engines.
- */
-static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instance *eci)
+
+static void basic_inst_size(int fd, int inst_type,
+ struct drm_xe_engine_class_instance *eci,
+ uint16_t cpu_caching, size_t bo_size)
{
struct drm_xe_sync sync[2] = {
{ .type = DRM_XE_SYNC_TYPE_SYNCOBJ, .flags = DRM_XE_SYNC_FLAG_SIGNAL, },
@@ -117,7 +112,6 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc
uint32_t exec_queue;
uint32_t bind_engine;
uint32_t syncobj;
- size_t bo_size;
int value = 0x123456;
uint64_t addr = 0x100000;
uint32_t bo = 0;
@@ -127,12 +121,16 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc
sync[1].handle = syncobj;
vm = xe_vm_create(fd, 0, 0);
- bo_size = sizeof(*data);
- bo_size = xe_bb_size(fd, bo_size);
- bo = xe_bo_create(fd, vm, bo_size,
- vram_if_possible(fd, eci->gt_id),
- DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM);
+ if (cpu_caching)
+ bo = xe_bo_create_caching(fd, vm, bo_size,
+ vram_if_possible(fd, eci->gt_id),
+ DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM,
+ cpu_caching);
+ else
+ bo = xe_bo_create(fd, vm, bo_size,
+ vram_if_possible(fd, eci->gt_id),
+ DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM);
exec_queue = xe_exec_queue_create(fd, vm, eci, 0);
bind_engine = xe_bind_exec_queue_create(fd, vm, 0);
@@ -167,6 +165,66 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc
xe_vm_destroy(fd, vm);
}
+
+/**
+ * SUBTEST: basic-store
+ * Description: Basic test to verify store dword.
+ * SUBTEST: basic-cond-batch
+ * Description: Basic test to verify cond batch end instruction.
+ * SUBTEST: basic-all
+ * Description: Test to verify store dword on all available engines.
+ */
+static void basic_inst(int fd, int inst_type,
+ struct drm_xe_engine_class_instance *eci,
+ uint16_t cpu_caching)
+{
+ size_t bo_size;
+
+ bo_size = sizeof(struct data);
+ bo_size = xe_bb_size(fd, bo_size);
+
+ basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size);
+}
+
+/**
+ * SUBTEST: basic-store-benchmark
+ * Description: Basic test to verify time taken for doing store dword with various size.
+ */
+static void basic_inst_benchmark(int fd, int inst_type,
+ struct drm_xe_engine_class_instance *eci,
+ uint16_t cpu_caching)
+{
+ struct {
+ size_t size;
+ const char *name;
+ } sizes[] = {
+ {SZ_4K, "SZ_4K"},
+ {SZ_2M, "SZ_2M"},
+ {SZ_64M, "SZ_64M"},
+ {SZ_128M, "SZ_128M"},
+ {SZ_256M, "SZ_256M"},
+ {SZ_1G, "SZ_1G"}
+ };
+
+ struct timeval start, end;
+ long seconds, useconds, utime;
+
+ for (size_t i = 0; i < ARRAY_SIZE(sizes); ++i) {
+ size_t bo_size = sizes[i].size;
+ const char *size_name = sizes[i].name;
+
+ gettimeofday(&start, NULL);
+ basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size);
+ gettimeofday(&end, NULL);
+
+ seconds = end.tv_sec - start.tv_sec;
+ useconds = end.tv_usec - start.tv_usec;
+ utime = (seconds * 1000000) + useconds;
+
+ igt_info("Time taken for size %s: %ld us\n", size_name, utime);
+ }
+}
+
#define PAGES 1
#define NCACHELINES (4096/64)
/**
@@ -342,12 +400,30 @@ igt_main
igt_subtest("basic-store") {
engine = xe_engine(fd, 1);
- basic_inst(fd, STORE, &engine->instance);
+ basic_inst(fd, COND_BATCH, &engine->instance, 0);
+ }
+
+ igt_subtest_with_dynamic("basic-store-benchmark") {
+ struct dyn {
+ const char *name;
+ int cache;
+ } tests[] = {
+ {"WC", DRM_XE_GEM_CPU_CACHING_WC},
+ {"WB", DRM_XE_GEM_CPU_CACHING_WB}
+ };
+ /* Enable for iGFX only for now */
+ igt_require(! xe_has_vram(fd));
+
+ for (int i = 0; i < ARRAY_SIZE(tests); i++) {
+ igt_dynamic_f("%s", tests[i].name);
+ engine = xe_engine(fd, 1);
+ basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache);
+ }
}
igt_subtest("basic-cond-batch") {
engine = xe_engine(fd, 1);
- basic_inst(fd, COND_BATCH, &engine->instance);
+ basic_inst(fd, COND_BATCH, &engine->instance, 0);
}
igt_subtest_with_dynamic("basic-all") {
@@ -356,7 +432,7 @@ igt_main
xe_engine_class_string(hwe->engine_class),
hwe->engine_instance,
hwe->gt_id);
- basic_inst(fd, STORE, hwe);
+ basic_inst(fd, STORE, hwe, 0);
}
}
--
2.42.0
^ permalink raw reply related [flat|nested] 8+ messages in thread* ✓ CI.xeBAT: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) 2024-06-25 13:08 [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Nirmoy Das @ 2024-06-25 14:11 ` Patchwork 2024-06-25 14:22 ` ✗ Fi.CI.BAT: failure " Patchwork ` (2 subsequent siblings) 3 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2024-06-25 14:11 UTC (permalink / raw) To: Nirmoy Das; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 1608 bytes --] == Series Details == Series: tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) URL : https://patchwork.freedesktop.org/series/135027/ State : success == Summary == CI Bug Log - changes from XEIGT_7898_BAT -> XEIGTPW_11313_BAT ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (5 -> 5) ------------------------------ No changes in participating hosts Known issues ------------ Here are the changes found in XEIGTPW_11313_BAT that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_frontbuffer_tracking@basic: - bat-adlp-7: [PASS][1] -> [DMESG-FAIL][2] ([Intel XE#324]) [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html [Intel XE#324]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/324 Build changes ------------- * IGT: IGT_7898 -> IGTPW_11313 * Linux: xe-1522-31d8e23bbf793469d597f3a17888fa55fffe7195 -> xe-1525-61dfb30a52fac9b1bb455a250799611682334cc3 IGTPW_11313: 11313 IGT_7898: a2600953b16d6628855b89ac40f477b58933b37b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-1522-31d8e23bbf793469d597f3a17888fa55fffe7195: 31d8e23bbf793469d597f3a17888fa55fffe7195 xe-1525-61dfb30a52fac9b1bb455a250799611682334cc3: 61dfb30a52fac9b1bb455a250799611682334cc3 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/index.html [-- Attachment #2: Type: text/html, Size: 2185 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* ✗ Fi.CI.BAT: failure for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) 2024-06-25 13:08 [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Nirmoy Das 2024-06-25 14:11 ` ✓ CI.xeBAT: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) Patchwork @ 2024-06-25 14:22 ` Patchwork 2024-06-25 16:07 ` ✓ CI.xeFULL: success " Patchwork 2024-06-28 17:02 ` [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Kamil Konieczny 3 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2024-06-25 14:22 UTC (permalink / raw) To: Nirmoy Das; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 7181 bytes --] == Series Details == Series: tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) URL : https://patchwork.freedesktop.org/series/135027/ State : failure == Summary == CI Bug Log - changes from CI_DRM_14998 -> IGTPW_11313 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_11313 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_11313, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/index.html Participating hosts (42 -> 40) ------------------------------ Additional (2): fi-kbl-8809g bat-jsl-3 Missing (4): bat-mtlp-8 bat-mtlp-9 fi-snb-2520m fi-bsw-n3050 Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_11313: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@live@active: - fi-rkl-11600: [PASS][1] -> [DMESG-FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/fi-rkl-11600/igt@i915_selftest@live@active.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/fi-rkl-11600/igt@i915_selftest@live@active.html Known issues ------------ Here are the changes found in IGTPW_11313 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@debugfs_test@basic-hwmon: - bat-jsl-3: NOTRUN -> [SKIP][3] ([i915#9318]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@debugfs_test@basic-hwmon.html * igt@gem_huc_copy@huc-copy: - fi-kbl-8809g: NOTRUN -> [SKIP][4] ([i915#2190]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/fi-kbl-8809g/igt@gem_huc_copy@huc-copy.html - bat-jsl-3: NOTRUN -> [SKIP][5] ([i915#2190]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@gem_huc_copy@huc-copy.html * igt@gem_lmem_swapping@basic: - bat-jsl-3: NOTRUN -> [SKIP][6] ([i915#4613]) +3 other tests skip [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@gem_lmem_swapping@basic.html - fi-kbl-8809g: NOTRUN -> [SKIP][7] ([i915#4613]) +3 other tests skip [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/fi-kbl-8809g/igt@gem_lmem_swapping@basic.html * igt@i915_pm_rpm@module-reload: - bat-adlp-6: [PASS][8] -> [DMESG-WARN][9] ([i915#8449]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-adlp-6/igt@i915_pm_rpm@module-reload.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-adlp-6/igt@i915_pm_rpm@module-reload.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy: - bat-jsl-3: NOTRUN -> [SKIP][10] ([i915#4103]) +1 other test skip [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html * igt@kms_dsc@dsc-basic: - bat-jsl-3: NOTRUN -> [SKIP][11] ([i915#3555] / [i915#9886]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@kms_dsc@dsc-basic.html * igt@kms_force_connector_basic@force-load-detect: - fi-kbl-8809g: NOTRUN -> [SKIP][12] +30 other tests skip [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/fi-kbl-8809g/igt@kms_force_connector_basic@force-load-detect.html - bat-jsl-3: NOTRUN -> [SKIP][13] [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_setmode@basic-clone-single-crtc: - bat-jsl-3: NOTRUN -> [SKIP][14] ([i915#3555]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-jsl-3/igt@kms_setmode@basic-clone-single-crtc.html #### Possible fixes #### * igt@i915_selftest@live@gt_lrc: - {bat-twl-1}: [INCOMPLETE][15] ([i915#10886]) -> [PASS][16] [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-twl-1/igt@i915_selftest@live@gt_lrc.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-twl-1/igt@i915_selftest@live@gt_lrc.html - bat-rplp-1: [DMESG-FAIL][17] ([i915#11330]) -> [PASS][18] [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-rplp-1/igt@i915_selftest@live@gt_lrc.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-rplp-1/igt@i915_selftest@live@gt_lrc.html * igt@i915_selftest@live@workarounds: - bat-adlp-6: [INCOMPLETE][19] ([i915#9413]) -> [PASS][20] [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-adlp-6/igt@i915_selftest@live@workarounds.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-adlp-6/igt@i915_selftest@live@workarounds.html * igt@kms_frontbuffer_tracking@basic: - bat-arls-2: [DMESG-WARN][21] ([i915#7507]) -> [PASS][22] [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-arls-2/igt@kms_frontbuffer_tracking@basic.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-arls-2/igt@kms_frontbuffer_tracking@basic.html * igt@kms_pipe_crc_basic@hang-read-crc@pipe-b-dp-1: - bat-dg2-8: [FAIL][23] ([i915#11379]) -> [PASS][24] [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14998/bat-dg2-8/igt@kms_pipe_crc_basic@hang-read-crc@pipe-b-dp-1.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/bat-dg2-8/igt@kms_pipe_crc_basic@hang-read-crc@pipe-b-dp-1.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#10886]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10886 [i915#11330]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11330 [i915#11379]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11379 [i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190 [i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555 [i915#4103]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4103 [i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613 [i915#7507]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7507 [i915#8449]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8449 [i915#9318]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9318 [i915#9413]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9413 [i915#9886]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9886 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_7898 -> IGTPW_11313 CI-20190529: 20190529 CI_DRM_14998: 61dfb30a52fac9b1bb455a250799611682334cc3 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_11313: 11313 IGT_7898: a2600953b16d6628855b89ac40f477b58933b37b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_11313/index.html [-- Attachment #2: Type: text/html, Size: 8367 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* ✓ CI.xeFULL: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) 2024-06-25 13:08 [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Nirmoy Das 2024-06-25 14:11 ` ✓ CI.xeBAT: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) Patchwork 2024-06-25 14:22 ` ✗ Fi.CI.BAT: failure " Patchwork @ 2024-06-25 16:07 ` Patchwork 2024-06-28 17:02 ` [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Kamil Konieczny 3 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2024-06-25 16:07 UTC (permalink / raw) To: Nirmoy Das; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 47043 bytes --] == Series Details == Series: tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) URL : https://patchwork.freedesktop.org/series/135027/ State : success == Summary == CI Bug Log - changes from XEIGT_7898_full -> XEIGTPW_11313_full ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (3 -> 3) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in XEIGTPW_11313_full: ### IGT changes ### #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@xe_vm@mixed-misaligned-binds-3145728: - {shard-lnl}: [PASS][1] -> [INCOMPLETE][2] +1 other test incomplete [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-lnl-5/igt@xe_vm@mixed-misaligned-binds-3145728.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-lnl-1/igt@xe_vm@mixed-misaligned-binds-3145728.html New tests --------- New tests have been introduced between XEIGT_7898_full and XEIGTPW_11313_full: ### New IGT tests (3) ### * igt@xe_exec_store@basic-store-benchmark: - Statuses : 1 pass(s) 1 skip(s) - Exec time: [0.0, 0.65] s * igt@xe_exec_store@basic-store-benchmark@wb: - Statuses : 1 pass(s) - Exec time: [0.0] s * igt@xe_exec_store@basic-store-benchmark@wc: - Statuses : 1 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in XEIGTPW_11313_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_big_fb@linear-32bpp-rotate-270: - shard-dg2-set2: NOTRUN -> [SKIP][3] ([Intel XE#316]) [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_big_fb@linear-32bpp-rotate-270.html * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip: - shard-dg2-set2: NOTRUN -> [SKIP][4] ([Intel XE#1124] / [Intel XE#1201]) [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-434/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html * igt@kms_bw@linear-tiling-2-displays-3840x2160p: - shard-dg2-set2: NOTRUN -> [SKIP][5] ([Intel XE#1201] / [Intel XE#367]) [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_bw@linear-tiling-2-displays-3840x2160p.html * igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-d-dp-4: - shard-dg2-set2: NOTRUN -> [SKIP][6] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#787]) +3 other tests skip [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-d-dp-4.html * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-xe2-ccs: - shard-dg2-set2: NOTRUN -> [SKIP][7] ([Intel XE#1252]) [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-xe2-ccs.html * igt@kms_ccs@missing-ccs-buffer-y-tiled-ccs@pipe-a-dp-4: - shard-dg2-set2: NOTRUN -> [SKIP][8] ([Intel XE#1201] / [Intel XE#787]) +13 other tests skip [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_ccs@missing-ccs-buffer-y-tiled-ccs@pipe-a-dp-4.html * igt@kms_chamelium_color@ctm-0-25: - shard-dg2-set2: NOTRUN -> [SKIP][9] ([Intel XE#1201] / [Intel XE#306]) [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_chamelium_color@ctm-0-25.html * igt@kms_content_protection@dp-mst-lic-type-0: - shard-dg2-set2: NOTRUN -> [SKIP][10] ([Intel XE#307]) [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_content_protection@dp-mst-lic-type-0.html * igt@kms_cursor_crc@cursor-offscreen-512x512: - shard-dg2-set2: NOTRUN -> [SKIP][11] ([Intel XE#1201] / [Intel XE#308]) [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_cursor_crc@cursor-offscreen-512x512.html * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling: - shard-dg2-set2: NOTRUN -> [SKIP][12] ([Intel XE#1201] / [Intel XE#455]) +4 other tests skip [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt: - shard-dg2-set2: NOTRUN -> [SKIP][13] ([Intel XE#1201] / [Intel XE#651]) [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-indfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-shrfb-msflip-blt: - shard-dg2-set2: NOTRUN -> [SKIP][14] ([Intel XE#651]) +1 other test skip [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-shrfb-msflip-blt.html * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y: - shard-dg2-set2: NOTRUN -> [SKIP][15] ([Intel XE#1201] / [Intel XE#658]) [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-onoff: - shard-dg2-set2: NOTRUN -> [SKIP][16] ([Intel XE#653]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-onoff.html * igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary: - shard-dg2-set2: NOTRUN -> [SKIP][17] ([Intel XE#1201] / [Intel XE#653]) +1 other test skip [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary.html * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf: - shard-dg2-set2: NOTRUN -> [SKIP][18] ([Intel XE#1201] / [Intel XE#1489]) [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html * igt@kms_psr@fbc-pr-suspend: - shard-dg2-set2: NOTRUN -> [SKIP][19] ([Intel XE#1201] / [Intel XE#929]) [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-434/igt@kms_psr@fbc-pr-suspend.html * igt@kms_writeback@writeback-check-output-xrgb2101010: - shard-dg2-set2: NOTRUN -> [SKIP][20] ([Intel XE#756]) [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_writeback@writeback-check-output-xrgb2101010.html * igt@xe_copy_basic@mem-copy-linear-0x369: - shard-dg2-set2: NOTRUN -> [SKIP][21] ([Intel XE#1123] / [Intel XE#1201]) [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_copy_basic@mem-copy-linear-0x369.html * igt@xe_copy_basic@mem-set-linear-0xfffe: - shard-dg2-set2: NOTRUN -> [SKIP][22] ([Intel XE#1126]) [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_copy_basic@mem-set-linear-0xfffe.html * igt@xe_evict@evict-beng-mixed-many-threads-small: - shard-dg2-set2: [PASS][23] -> [TIMEOUT][24] ([Intel XE#1473] / [Intel XE#402]) [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-464/igt@xe_evict@evict-beng-mixed-many-threads-small.html [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@xe_evict@evict-beng-mixed-many-threads-small.html * igt@xe_evict@evict-beng-threads-large: - shard-dg2-set2: [PASS][25] -> [TIMEOUT][26] ([Intel XE#1473]) [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_evict@evict-beng-threads-large.html [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-436/igt@xe_evict@evict-beng-threads-large.html * igt@xe_evict@evict-mixed-threads-large: - shard-dg2-set2: [PASS][27] -> [INCOMPLETE][28] ([Intel XE#1195] / [Intel XE#1473] / [Intel XE#392]) [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_evict@evict-mixed-threads-large.html [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_evict@evict-mixed-threads-large.html * igt@xe_evict@evict-threads-large: - shard-dg2-set2: [PASS][29] -> [TIMEOUT][30] ([Intel XE#1473] / [Intel XE#392]) [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-433/igt@xe_evict@evict-threads-large.html [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@xe_evict@evict-threads-large.html * igt@xe_exec_fault_mode@many-bindexecqueue-userptr-rebind: - shard-dg2-set2: NOTRUN -> [SKIP][31] ([Intel XE#288]) [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_exec_fault_mode@many-bindexecqueue-userptr-rebind.html * igt@xe_exec_fault_mode@many-execqueues-bindexecqueue-rebind: - shard-dg2-set2: NOTRUN -> [SKIP][32] ([Intel XE#1201] / [Intel XE#288]) [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@xe_exec_fault_mode@many-execqueues-bindexecqueue-rebind.html * {igt@xe_exec_store@basic-store-benchmark} (NEW): - shard-dg2-set2: NOTRUN -> [SKIP][33] ([Intel XE#1201]) [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@xe_exec_store@basic-store-benchmark.html * igt@xe_huc_copy@huc_copy: - shard-dg2-set2: NOTRUN -> [SKIP][34] ([Intel XE#1201] / [Intel XE#255]) [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-433/igt@xe_huc_copy@huc_copy.html * igt@xe_pm@s3-basic-exec: - shard-dg2-set2: [PASS][35] -> [DMESG-WARN][36] ([Intel XE#1214] / [Intel XE#1551] / [Intel XE#569]) [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_pm@s3-basic-exec.html [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_pm@s3-basic-exec.html * igt@xe_pm@s3-vm-bind-unbind-all: - shard-dg2-set2: [PASS][37] -> [DMESG-WARN][38] ([Intel XE#1162] / [Intel XE#1214] / [Intel XE#1941]) [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-433/igt@xe_pm@s3-vm-bind-unbind-all.html [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_pm@s3-vm-bind-unbind-all.html * igt@xe_query@multigpu-query-invalid-extension: - shard-dg2-set2: NOTRUN -> [SKIP][39] ([Intel XE#1201] / [Intel XE#944]) [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-434/igt@xe_query@multigpu-query-invalid-extension.html #### Possible fixes #### * igt@fbdev@read: - {shard-lnl}: [INCOMPLETE][40] -> [PASS][41] [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-lnl-8/igt@fbdev@read.html [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-lnl-1/igt@fbdev@read.html * igt@kms_cursor_crc@cursor-rapid-movement-256x256@pipe-d-hdmi-a-6: - shard-dg2-set2: [DMESG-WARN][42] ([Intel XE#282]) -> [PASS][43] +5 other tests pass [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_cursor_crc@cursor-rapid-movement-256x256@pipe-d-hdmi-a-6.html [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@kms_cursor_crc@cursor-rapid-movement-256x256@pipe-d-hdmi-a-6.html * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic: - shard-dg2-set2: [DMESG-WARN][44] ([Intel XE#1214] / [Intel XE#282] / [Intel XE#910]) -> [PASS][45] +4 other tests pass [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-464/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html * igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions: - shard-dg2-set2: [DMESG-WARN][46] ([Intel XE#1214] / [Intel XE#282]) -> [PASS][47] +45 other tests pass [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions.html [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions.html * igt@kms_flip@flip-vs-absolute-wf_vblank: - {shard-lnl}: [FAIL][48] ([Intel XE#886]) -> [PASS][49] +2 other tests pass [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-lnl-2/igt@kms_flip@flip-vs-absolute-wf_vblank.html [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-lnl-4/igt@kms_flip@flip-vs-absolute-wf_vblank.html * igt@kms_hdmi_inject@inject-audio: - shard-dg2-set2: [SKIP][50] ([Intel XE#1201] / [Intel XE#417]) -> [PASS][51] [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@kms_hdmi_inject@inject-audio.html [51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_hdmi_inject@inject-audio.html * igt@kms_pipe_crc_basic@suspend-read-crc: - shard-dg2-set2: [DMESG-WARN][52] ([Intel XE#1162]) -> [PASS][53] [52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_pipe_crc_basic@suspend-read-crc.html [53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-436/igt@kms_pipe_crc_basic@suspend-read-crc.html * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-dp-4: - shard-dg2-set2: [DMESG-WARN][54] -> [PASS][55] [54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-dp-4.html [55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-436/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-dp-4.html * igt@kms_universal_plane@cursor-fb-leak: - shard-dg2-set2: [FAIL][56] ([Intel XE#771] / [Intel XE#899]) -> [PASS][57] [56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_universal_plane@cursor-fb-leak.html [57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_universal_plane@cursor-fb-leak.html * igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-6: - shard-dg2-set2: [FAIL][58] ([Intel XE#899]) -> [PASS][59] [58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-6.html [59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-6.html * igt@xe_ccs@suspend-resume@linear-compressed-compfmt0-system-system: - {shard-lnl}: [DMESG-WARN][60] ([Intel XE#2052]) -> [PASS][61] +2 other tests pass [60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-lnl-8/igt@xe_ccs@suspend-resume@linear-compressed-compfmt0-system-system.html [61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-lnl-5/igt@xe_ccs@suspend-resume@linear-compressed-compfmt0-system-system.html * igt@xe_gt_freq@freq_fixed_exec: - shard-dg2-set2: [FAIL][62] ([Intel XE#1414]) -> [PASS][63] [62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_gt_freq@freq_fixed_exec.html [63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-433/igt@xe_gt_freq@freq_fixed_exec.html * igt@xe_gt_freq@freq_low_max: - {shard-lnl}: [FAIL][64] ([Intel XE#1045]) -> [PASS][65] [64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-lnl-4/igt@xe_gt_freq@freq_low_max.html [65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-lnl-1/igt@xe_gt_freq@freq_low_max.html * igt@xe_pm@s3-vm-bind-prefetch: - shard-dg2-set2: [DMESG-WARN][66] ([Intel XE#1214] / [Intel XE#569]) -> [PASS][67] [66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@xe_pm@s3-vm-bind-prefetch.html [67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@xe_pm@s3-vm-bind-prefetch.html * igt@xe_pm@s4-basic-exec: - shard-dg2-set2: [DMESG-WARN][68] ([Intel XE#1214]) -> [PASS][69] [68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@xe_pm@s4-basic-exec.html [69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_pm@s4-basic-exec.html #### Warnings #### * igt@kms_big_fb@4-tiled-8bpp-rotate-90: - shard-dg2-set2: [SKIP][70] ([Intel XE#1201] / [Intel XE#316]) -> [SKIP][71] ([Intel XE#316]) +2 other tests skip [70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@kms_big_fb@4-tiled-8bpp-rotate-90.html [71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_big_fb@4-tiled-8bpp-rotate-90.html * igt@kms_big_fb@linear-16bpp-rotate-270: - shard-dg2-set2: [SKIP][72] ([Intel XE#316]) -> [SKIP][73] ([Intel XE#1201] / [Intel XE#316]) +2 other tests skip [72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_big_fb@linear-16bpp-rotate-270.html [73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_big_fb@linear-16bpp-rotate-270.html * igt@kms_big_fb@y-tiled-16bpp-rotate-90: - shard-dg2-set2: [SKIP][74] ([Intel XE#1124]) -> [SKIP][75] ([Intel XE#1124] / [Intel XE#1201]) +3 other tests skip [74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html [75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-463/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip: - shard-dg2-set2: [SKIP][76] ([Intel XE#1124] / [Intel XE#1201]) -> [SKIP][77] ([Intel XE#1124]) +7 other tests skip [76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html [77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html * igt@kms_bw@linear-tiling-4-displays-2160x1440p: - shard-dg2-set2: [SKIP][78] ([Intel XE#1201] / [Intel XE#367]) -> [SKIP][79] ([Intel XE#367]) +1 other test skip [78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html [79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs: - shard-dg2-set2: [SKIP][80] ([Intel XE#455] / [Intel XE#787]) -> [SKIP][81] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#787]) +7 other tests skip [80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs.html [81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs.html * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-6: - shard-dg2-set2: [SKIP][82] ([Intel XE#787]) -> [SKIP][83] ([Intel XE#1201] / [Intel XE#787]) +27 other tests skip [82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-6.html [83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-6.html * igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-6: - shard-dg2-set2: [SKIP][84] ([Intel XE#1201] / [Intel XE#787]) -> [SKIP][85] ([Intel XE#787]) +48 other tests skip [84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-463/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-6.html [85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_ccs@bad-pixel-format-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-6.html * igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs: - shard-dg2-set2: [SKIP][86] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#787]) -> [SKIP][87] ([Intel XE#455] / [Intel XE#787]) +13 other tests skip [86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs.html [87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs.html * igt@kms_ccs@crc-primary-rotation-180-4-tiled-xe2-ccs: - shard-dg2-set2: [SKIP][88] ([Intel XE#1201] / [Intel XE#1252]) -> [SKIP][89] ([Intel XE#1252]) [88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_ccs@crc-primary-rotation-180-4-tiled-xe2-ccs.html [89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_ccs@crc-primary-rotation-180-4-tiled-xe2-ccs.html * igt@kms_chamelium_color@ctm-blue-to-red: - shard-dg2-set2: [SKIP][90] ([Intel XE#306]) -> [SKIP][91] ([Intel XE#1201] / [Intel XE#306]) [90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_chamelium_color@ctm-blue-to-red.html [91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@kms_chamelium_color@ctm-blue-to-red.html * igt@kms_chamelium_color@gamma: - shard-dg2-set2: [SKIP][92] ([Intel XE#1201] / [Intel XE#306]) -> [SKIP][93] ([Intel XE#306]) [92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_chamelium_color@gamma.html [93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_chamelium_color@gamma.html * igt@kms_chamelium_frames@vga-frame-dump: - shard-dg2-set2: [SKIP][94] ([Intel XE#1201] / [Intel XE#373]) -> [SKIP][95] ([Intel XE#373]) +5 other tests skip [94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-433/igt@kms_chamelium_frames@vga-frame-dump.html [95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_chamelium_frames@vga-frame-dump.html * igt@kms_chamelium_hpd@vga-hpd: - shard-dg2-set2: [SKIP][96] ([Intel XE#373]) -> [SKIP][97] ([Intel XE#1201] / [Intel XE#373]) +3 other tests skip [96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_chamelium_hpd@vga-hpd.html [97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_chamelium_hpd@vga-hpd.html * igt@kms_content_protection@dp-mst-type-0: - shard-dg2-set2: [SKIP][98] ([Intel XE#1201] / [Intel XE#307]) -> [SKIP][99] ([Intel XE#307]) [98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_content_protection@dp-mst-type-0.html [99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_content_protection@dp-mst-type-0.html * igt@kms_cursor_crc@cursor-offscreen-512x170: - shard-dg2-set2: [SKIP][100] ([Intel XE#1201] / [Intel XE#308]) -> [SKIP][101] ([Intel XE#308]) [100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_cursor_crc@cursor-offscreen-512x170.html [101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_cursor_crc@cursor-offscreen-512x170.html * igt@kms_cursor_crc@cursor-rapid-movement-max-size: - shard-dg2-set2: [SKIP][102] ([Intel XE#1201] / [Intel XE#455]) -> [SKIP][103] ([Intel XE#455]) +13 other tests skip [102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html [103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_cursor_crc@cursor-rapid-movement-max-size.html * igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-6: - shard-dg2-set2: [DMESG-FAIL][104] ([Intel XE#1551]) -> [FAIL][105] ([Intel XE#616]) +1 other test fail [104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-6.html [105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-434/igt@kms_cursor_crc@cursor-suspend@pipe-d-hdmi-a-6.html * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic: - shard-dg2-set2: [SKIP][106] ([Intel XE#1201] / [Intel XE#323]) -> [SKIP][107] ([Intel XE#323]) +1 other test skip [106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-464/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html [107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html * igt@kms_feature_discovery@psr1: - shard-dg2-set2: [SKIP][108] ([Intel XE#1135] / [Intel XE#1201]) -> [SKIP][109] ([Intel XE#1135]) [108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_feature_discovery@psr1.html [109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_feature_discovery@psr1.html * igt@kms_flip@2x-flip-vs-suspend-interruptible@ab-hdmi-a6-dp4: - shard-dg2-set2: [DMESG-WARN][110] -> [DMESG-WARN][111] ([Intel XE#1214]) +1 other test dmesg-warn [110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_flip@2x-flip-vs-suspend-interruptible@ab-hdmi-a6-dp4.html [111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@kms_flip@2x-flip-vs-suspend-interruptible@ab-hdmi-a6-dp4.html * igt@kms_flip@flip-vs-suspend@a-hdmi-a6: - shard-dg2-set2: [DMESG-WARN][112] ([Intel XE#1551]) -> [DMESG-WARN][113] ([Intel XE#1214] / [Intel XE#1551]) +1 other test dmesg-warn [112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_flip@flip-vs-suspend@a-hdmi-a6.html [113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_flip@flip-vs-suspend@a-hdmi-a6.html * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling: - shard-dg2-set2: [SKIP][114] ([Intel XE#455]) -> [SKIP][115] ([Intel XE#1201] / [Intel XE#455]) +1 other test skip [114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling.html [115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling.html * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-msflip-blt: - shard-dg2-set2: [SKIP][116] ([Intel XE#1201] / [Intel XE#651]) -> [SKIP][117] ([Intel XE#651]) +16 other tests skip [116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-433/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-msflip-blt.html [117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-msflip-blt.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt: - shard-dg2-set2: [SKIP][118] ([Intel XE#651]) -> [SKIP][119] ([Intel XE#1201] / [Intel XE#651]) +7 other tests skip [118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt.html [119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-436/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render: - shard-dg2-set2: [SKIP][120] ([Intel XE#653]) -> [SKIP][121] ([Intel XE#1201] / [Intel XE#653]) +10 other tests skip [120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html [121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-435/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-render.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-onoff: - shard-dg2-set2: [SKIP][122] ([Intel XE#1201] / [Intel XE#653]) -> [SKIP][123] ([Intel XE#653]) +16 other tests skip [122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-463/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-onoff.html [123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-onoff.html * igt@kms_multipipe_modeset@basic-max-pipe-crc-check: - shard-dg2-set2: [SKIP][124] ([Intel XE#1201] / [Intel XE#356]) -> [SKIP][125] ([Intel XE#356]) [124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-433/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html [125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html * igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format: - shard-dg2-set2: [SKIP][126] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#498]) -> [SKIP][127] ([Intel XE#455] / [Intel XE#498]) +1 other test skip [126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format.html [127]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format.html * igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-c-hdmi-a-6: - shard-dg2-set2: [SKIP][128] ([Intel XE#1201] / [Intel XE#498]) -> [SKIP][129] ([Intel XE#498]) +2 other tests skip [128]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-c-hdmi-a-6.html [129]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-pixel-format@pipe-c-hdmi-a-6.html * igt@kms_pm_backlight@fade-with-suspend: - shard-dg2-set2: [SKIP][130] ([Intel XE#1201] / [Intel XE#870]) -> [SKIP][131] ([Intel XE#870]) [130]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@kms_pm_backlight@fade-with-suspend.html [131]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_pm_backlight@fade-with-suspend.html * igt@kms_pm_dc@dc6-psr: - shard-dg2-set2: [SKIP][132] ([Intel XE#1129] / [Intel XE#1201]) -> [SKIP][133] ([Intel XE#1129]) [132]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-464/igt@kms_pm_dc@dc6-psr.html [133]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_pm_dc@dc6-psr.html * igt@kms_psr2_sf@fbc-cursor-plane-move-continuous-exceed-sf: - shard-dg2-set2: [SKIP][134] ([Intel XE#1201]) -> [SKIP][135] ([Intel XE#1201] / [Intel XE#1489]) +18 other tests skip [134]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@kms_psr2_sf@fbc-cursor-plane-move-continuous-exceed-sf.html [135]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@kms_psr2_sf@fbc-cursor-plane-move-continuous-exceed-sf.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area: - shard-dg2-set2: [SKIP][136] ([Intel XE#1201]) -> [SKIP][137] ([Intel XE#1489]) +2 other tests skip [136]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html [137]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html * igt@kms_psr@fbc-pr-no-drrs: - shard-dg2-set2: [SKIP][138] ([Intel XE#929]) -> [SKIP][139] ([Intel XE#1201] / [Intel XE#929]) +6 other tests skip [138]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@kms_psr@fbc-pr-no-drrs.html [139]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-436/igt@kms_psr@fbc-pr-no-drrs.html * igt@kms_psr@psr-cursor-plane-move: - shard-dg2-set2: [SKIP][140] ([Intel XE#1201] / [Intel XE#929]) -> [SKIP][141] ([Intel XE#929]) +10 other tests skip [140]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@kms_psr@psr-cursor-plane-move.html [141]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_psr@psr-cursor-plane-move.html * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0: - shard-dg2-set2: [SKIP][142] ([Intel XE#1127] / [Intel XE#1201]) -> [SKIP][143] ([Intel XE#1127]) [142]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html [143]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html * igt@kms_tiled_display@basic-test-pattern-with-chamelium: - shard-dg2-set2: [SKIP][144] ([Intel XE#1201] / [Intel XE#1500]) -> [SKIP][145] ([Intel XE#1500]) [144]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [145]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html * igt@kms_vblank@ts-continuation-dpms-suspend: - shard-dg2-set2: [DMESG-WARN][146] ([Intel XE#1214] / [Intel XE#1551]) -> [DMESG-WARN][147] ([Intel XE#1551]) +1 other test dmesg-warn [146]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@kms_vblank@ts-continuation-dpms-suspend.html [147]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@kms_vblank@ts-continuation-dpms-suspend.html * igt@sriov_basic@bind-unbind-vf: - shard-dg2-set2: [SKIP][148] ([Intel XE#1091]) -> [SKIP][149] ([Intel XE#1091] / [Intel XE#1201]) [148]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@sriov_basic@bind-unbind-vf.html [149]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@sriov_basic@bind-unbind-vf.html * igt@xe_compute_preempt@compute-preempt-many: - shard-dg2-set2: [SKIP][150] ([Intel XE#1201] / [Intel XE#1280] / [Intel XE#455]) -> [SKIP][151] ([Intel XE#1280] / [Intel XE#455]) +1 other test skip [150]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-464/igt@xe_compute_preempt@compute-preempt-many.html [151]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_compute_preempt@compute-preempt-many.html * igt@xe_copy_basic@mem-copy-linear-0xfd: - shard-dg2-set2: [SKIP][152] ([Intel XE#1123] / [Intel XE#1201]) -> [SKIP][153] ([Intel XE#1123]) [152]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-466/igt@xe_copy_basic@mem-copy-linear-0xfd.html [153]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_copy_basic@mem-copy-linear-0xfd.html * igt@xe_copy_basic@mem-set-linear-0x3fff: - shard-dg2-set2: [SKIP][154] ([Intel XE#1126]) -> [SKIP][155] ([Intel XE#1126] / [Intel XE#1201]) [154]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@xe_copy_basic@mem-set-linear-0x3fff.html [155]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_copy_basic@mem-set-linear-0x3fff.html * igt@xe_evict@evict-beng-cm-threads-large: - shard-dg2-set2: [INCOMPLETE][156] ([Intel XE#1473] / [Intel XE#392]) -> [INCOMPLETE][157] ([Intel XE#1195] / [Intel XE#1473] / [Intel XE#392]) [156]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@xe_evict@evict-beng-cm-threads-large.html [157]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@xe_evict@evict-beng-cm-threads-large.html * igt@xe_evict@evict-beng-mixed-many-threads-large: - shard-dg2-set2: [INCOMPLETE][158] ([Intel XE#1195] / [Intel XE#1473] / [Intel XE#392]) -> [TIMEOUT][159] ([Intel XE#1041] / [Intel XE#1473] / [Intel XE#392]) [158]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@xe_evict@evict-beng-mixed-many-threads-large.html [159]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_evict@evict-beng-mixed-many-threads-large.html * igt@xe_exec_fault_mode@many-bindexecqueue-userptr-invalidate-race: - shard-dg2-set2: [SKIP][160] ([Intel XE#1201] / [Intel XE#288]) -> [SKIP][161] ([Intel XE#288]) +15 other tests skip [160]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@xe_exec_fault_mode@many-bindexecqueue-userptr-invalidate-race.html [161]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_exec_fault_mode@many-bindexecqueue-userptr-invalidate-race.html * igt@xe_exec_fault_mode@once-bindexecqueue-rebind-prefetch: - shard-dg2-set2: [SKIP][162] ([Intel XE#288]) -> [SKIP][163] ([Intel XE#1201] / [Intel XE#288]) +9 other tests skip [162]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@xe_exec_fault_mode@once-bindexecqueue-rebind-prefetch.html [163]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-433/igt@xe_exec_fault_mode@once-bindexecqueue-rebind-prefetch.html * igt@xe_live_ktest@xe_mocs: - shard-dg2-set2: [FAIL][164] ([Intel XE#1999]) -> [SKIP][165] ([Intel XE#1192] / [Intel XE#1201]) [164]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_live_ktest@xe_mocs.html [165]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_live_ktest@xe_mocs.html * igt@xe_media_fill@media-fill: - shard-dg2-set2: [SKIP][166] ([Intel XE#1201] / [Intel XE#560]) -> [SKIP][167] ([Intel XE#560]) [166]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-435/igt@xe_media_fill@media-fill.html [167]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_media_fill@media-fill.html * igt@xe_pat@pat-index-xe2: - shard-dg2-set2: [SKIP][168] ([Intel XE#1201] / [Intel XE#977]) -> [SKIP][169] ([Intel XE#977]) [168]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@xe_pat@pat-index-xe2.html [169]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_pat@pat-index-xe2.html * igt@xe_pm@d3cold-multiple-execs: - shard-dg2-set2: [SKIP][170] ([Intel XE#366]) -> [SKIP][171] ([Intel XE#1201] / [Intel XE#366]) [170]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-432/igt@xe_pm@d3cold-multiple-execs.html [171]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-466/igt@xe_pm@d3cold-multiple-execs.html * igt@xe_pm@s3-d3hot-basic-exec: - shard-dg2-set2: [INCOMPLETE][172] ([Intel XE#1195] / [Intel XE#1358] / [Intel XE#569]) -> [DMESG-WARN][173] ([Intel XE#1214] / [Intel XE#1551] / [Intel XE#569]) [172]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-434/igt@xe_pm@s3-d3hot-basic-exec.html [173]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-464/igt@xe_pm@s3-d3hot-basic-exec.html * igt@xe_query@multigpu-query-hwconfig: - shard-dg2-set2: [SKIP][174] ([Intel XE#1201] / [Intel XE#944]) -> [SKIP][175] ([Intel XE#944]) [174]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7898/shard-dg2-436/igt@xe_query@multigpu-query-hwconfig.html [175]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/shard-dg2-432/igt@xe_query@multigpu-query-hwconfig.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [Intel XE#1041]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1041 [Intel XE#1045]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1045 [Intel XE#1091]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1091 [Intel XE#1123]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1123 [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124 [Intel XE#1125]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1125 [Intel XE#1126]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1126 [Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127 [Intel XE#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128 [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129 [Intel XE#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135 [Intel XE#1162]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1162 [Intel XE#1192]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1192 [Intel XE#1195]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1195 [Intel XE#1201]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1201 [Intel XE#1214]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1214 [Intel XE#1252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1252 [Intel XE#1280]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1280 [Intel XE#1358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1358 [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392 [Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397 [Intel XE#1399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1399 [Intel XE#1401]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1401 [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406 [Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407 [Intel XE#1413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1413 [Intel XE#1414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1414 [Intel XE#1420]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1420 [Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421 [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424 [Intel XE#1430]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1430 [Intel XE#1437]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1437 [Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439 [Intel XE#1467]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1467 [Intel XE#1468]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1468 [Intel XE#1473]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1473 [Intel XE#1477]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1477 [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489 [Intel XE#1500]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1500 [Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512 [Intel XE#1522]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1522 [Intel XE#1551]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1551 [Intel XE#1620]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1620 [Intel XE#1659]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1659 [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745 [Intel XE#1941]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1941 [Intel XE#1948]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1948 [Intel XE#1999]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1999 [Intel XE#2052]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2052 [Intel XE#255]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/255 [Intel XE#282]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/282 [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288 [Intel XE#294]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/294 [Intel XE#305]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/305 [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306 [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307 [Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308 [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309 [Intel XE#314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/314 [Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316 [Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323 [Intel XE#356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/356 [Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362 [Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366 [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367 [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373 [Intel XE#374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/374 [Intel XE#392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/392 [Intel XE#402]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/402 [Intel XE#417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/417 [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455 [Intel XE#498]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/498 [Intel XE#560]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/560 [Intel XE#569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/569 [Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584 [Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599 [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616 [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651 [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653 [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656 [Intel XE#658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/658 [Intel XE#664]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/664 [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688 [Intel XE#702]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/702 [Intel XE#756]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/756 [Intel XE#771]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/771 [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787 [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870 [Intel XE#886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/886 [Intel XE#899]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/899 [Intel XE#910]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/910 [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929 [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944 [Intel XE#958]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/958 [Intel XE#977]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/977 Build changes ------------- * IGT: IGT_7898 -> IGTPW_11313 * Linux: xe-1522-31d8e23bbf793469d597f3a17888fa55fffe7195 -> xe-1525-61dfb30a52fac9b1bb455a250799611682334cc3 IGTPW_11313: 11313 IGT_7898: a2600953b16d6628855b89ac40f477b58933b37b @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-1522-31d8e23bbf793469d597f3a17888fa55fffe7195: 31d8e23bbf793469d597f3a17888fa55fffe7195 xe-1525-61dfb30a52fac9b1bb455a250799611682334cc3: 61dfb30a52fac9b1bb455a250799611682334cc3 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_11313/index.html [-- Attachment #2: Type: text/html, Size: 60147 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark 2024-06-25 13:08 [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Nirmoy Das ` (2 preceding siblings ...) 2024-06-25 16:07 ` ✓ CI.xeFULL: success " Patchwork @ 2024-06-28 17:02 ` Kamil Konieczny 2024-07-01 7:59 ` Nirmoy Das 3 siblings, 1 reply; 8+ messages in thread From: Kamil Konieczny @ 2024-06-28 17:02 UTC (permalink / raw) To: igt-dev; +Cc: Nirmoy Das Hi Nirmoy, On 2024-06-25 at 15:08:16 +0200, Nirmoy Das wrote: test names should use '-' as separator, you also used other name so: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark should be: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic-store-benchmark > Add basic_inst_benchmark to benchmark this basic operation ---------- ^----^ Same here, use '-' as separator, s/_inst_/-store-/ > for BO sizes to get basic understanding how long it takes > bind a BO and run simple GPU command on it. > > This not a CI test but rather for developer to identify various > bottleneck/regression in BO binding. > > Signed-off-by: Nirmoy Das <nirmoy.das@intel.com> > --- > tests/intel/xe_exec_store.c | 112 ++++++++++++++++++++++++++++++------ > 1 file changed, 94 insertions(+), 18 deletions(-) > > diff --git a/tests/intel/xe_exec_store.c b/tests/intel/xe_exec_store.c > index c872c22d5..aaabdbec3 100644 > --- a/tests/intel/xe_exec_store.c > +++ b/tests/intel/xe_exec_store.c > @@ -93,15 +93,10 @@ static void persistance_batch(struct data *data, uint64_t addr) > data->addr = batch_addr; > > } > -/** > - * SUBTEST: basic-store > - * Description: Basic test to verify store dword. > - * SUBTEST: basic-cond-batch > - * Description: Basic test to verify cond batch end instruction. > - * SUBTEST: basic-all > - * Description: Test to verify store dword on all available engines. > - */ > -static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instance *eci) > + > +static void basic_inst_size(int fd, int inst_type, > + struct drm_xe_engine_class_instance *eci, > + uint16_t cpu_caching, size_t bo_size) > { > struct drm_xe_sync sync[2] = { > { .type = DRM_XE_SYNC_TYPE_SYNCOBJ, .flags = DRM_XE_SYNC_FLAG_SIGNAL, }, > @@ -117,7 +112,6 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > uint32_t exec_queue; > uint32_t bind_engine; > uint32_t syncobj; > - size_t bo_size; > int value = 0x123456; > uint64_t addr = 0x100000; > uint32_t bo = 0; > @@ -127,12 +121,16 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > sync[1].handle = syncobj; > > vm = xe_vm_create(fd, 0, 0); > - bo_size = sizeof(*data); > - bo_size = xe_bb_size(fd, bo_size); > > - bo = xe_bo_create(fd, vm, bo_size, > - vram_if_possible(fd, eci->gt_id), > - DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); > + if (cpu_caching) > + bo = xe_bo_create_caching(fd, vm, bo_size, > + vram_if_possible(fd, eci->gt_id), > + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM, > + cpu_caching); > + else > + bo = xe_bo_create(fd, vm, bo_size, > + vram_if_possible(fd, eci->gt_id), > + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); > > exec_queue = xe_exec_queue_create(fd, vm, eci, 0); > bind_engine = xe_bind_exec_queue_create(fd, vm, 0); > @@ -167,6 +165,66 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > xe_vm_destroy(fd, vm); > } > > + > +/** > + * SUBTEST: basic-store > + * Description: Basic test to verify store dword. > + * SUBTEST: basic-cond-batch > + * Description: Basic test to verify cond batch end instruction. > + * SUBTEST: basic-all > + * Description: Test to verify store dword on all available engines. > + */ > +static void basic_inst(int fd, int inst_type, > + struct drm_xe_engine_class_instance *eci, > + uint16_t cpu_caching) > +{ > + size_t bo_size; > + > + bo_size = sizeof(struct data); > + bo_size = xe_bb_size(fd, bo_size); > + > + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); > +} > + > +/** > + * SUBTEST: basic-store-benchmark > + * Description: Basic test to verify time taken for doing store dword with various size. > + */ > +static void basic_inst_benchmark(int fd, int inst_type, > + struct drm_xe_engine_class_instance *eci, > + uint16_t cpu_caching) > +{ > + struct { > + size_t size; > + const char *name; > + } sizes[] = { > + {SZ_4K, "SZ_4K"}, > + {SZ_2M, "SZ_2M"}, > + {SZ_64M, "SZ_64M"}, > + {SZ_128M, "SZ_128M"}, > + {SZ_256M, "SZ_256M"}, > + {SZ_1G, "SZ_1G"} Could you use more human-friendly strings here? 4KB, 2MB, ...1GB > + }; > + > + struct timeval start, end; > + long seconds, useconds, utime; > + > + for (size_t i = 0; i < ARRAY_SIZE(sizes); ++i) { > + size_t bo_size = sizes[i].size; > + const char *size_name = sizes[i].name; > + > + gettimeofday(&start, NULL); > + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); > + gettimeofday(&end, NULL); > + > + seconds = end.tv_sec - start.tv_sec; > + useconds = end.tv_usec - start.tv_usec; > + utime = (seconds * 1000000) + useconds; imho there is igt function for such time measure. > + > + igt_info("Time taken for size %s: %ld us\n", size_name, utime); > + } > +} > + > #define PAGES 1 > #define NCACHELINES (4096/64) > /** > @@ -342,12 +400,30 @@ igt_main > > igt_subtest("basic-store") { > engine = xe_engine(fd, 1); > - basic_inst(fd, STORE, &engine->instance); > + basic_inst(fd, COND_BATCH, &engine->instance, 0); > + } > + > + igt_subtest_with_dynamic("basic-store-benchmark") { > + struct dyn { > + const char *name; > + int cache; > + } tests[] = { > + {"WC", DRM_XE_GEM_CPU_CACHING_WC}, > + {"WB", DRM_XE_GEM_CPU_CACHING_WB} > + }; > + /* Enable for iGFX only for now */ > + igt_require(! xe_has_vram(fd)); -------------------- ^ Please use checkpatch.pl for similar hints. Could you test with 0 for dGFX? > + > + for (int i = 0; i < ARRAY_SIZE(tests); i++) { > + igt_dynamic_f("%s", tests[i].name); ----------------------------------------------^ This is the reason you didn't see dynamic tests running with --dyn WC, it should be: > + engine = xe_engine(fd, 1); > + basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); > + } igt_dynamic_f("%s", tests[i].name) { engine = xe_engine(fd, 1); basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); } Btw should you add a skip if engine == NULL? > + } > } > > igt_subtest("basic-cond-batch") { > engine = xe_engine(fd, 1); > - basic_inst(fd, COND_BATCH, &engine->instance); > + basic_inst(fd, COND_BATCH, &engine->instance, 0); > } > > igt_subtest_with_dynamic("basic-all") { > @@ -356,7 +432,7 @@ igt_main > xe_engine_class_string(hwe->engine_class), > hwe->engine_instance, > hwe->gt_id); > - basic_inst(fd, STORE, hwe); > + basic_inst(fd, STORE, hwe, 0); > } > } > > -- > 2.42.0 > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark 2024-06-28 17:02 ` [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Kamil Konieczny @ 2024-07-01 7:59 ` Nirmoy Das 2024-07-01 18:12 ` Kamil Konieczny 0 siblings, 1 reply; 8+ messages in thread From: Nirmoy Das @ 2024-07-01 7:59 UTC (permalink / raw) To: Kamil Konieczny, igt-dev, Nirmoy Das [-- Attachment #1: Type: text/plain, Size: 7335 bytes --] Hi Kamil, On 6/28/2024 7:02 PM, Kamil Konieczny wrote: > Hi Nirmoy, > On 2024-06-25 at 15:08:16 +0200, Nirmoy Das wrote: > > test names should use '-' as separator, you also used other > name so: > [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark > > should be: > [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic-store-benchmark Looks like I misunderstood your last comment. Will fix it. > >> Add basic_inst_benchmark to benchmark this basic operation > ---------- ^----^ > Same here, use '-' as separator, s/_inst_/-store-/ > >> for BO sizes to get basic understanding how long it takes >> bind a BO and run simple GPU command on it. >> >> This not a CI test but rather for developer to identify various >> bottleneck/regression in BO binding. >> >> Signed-off-by: Nirmoy Das<nirmoy.das@intel.com> >> --- >> tests/intel/xe_exec_store.c | 112 ++++++++++++++++++++++++++++++------ >> 1 file changed, 94 insertions(+), 18 deletions(-) >> >> diff --git a/tests/intel/xe_exec_store.c b/tests/intel/xe_exec_store.c >> index c872c22d5..aaabdbec3 100644 >> --- a/tests/intel/xe_exec_store.c >> +++ b/tests/intel/xe_exec_store.c >> @@ -93,15 +93,10 @@ static void persistance_batch(struct data *data, uint64_t addr) >> data->addr = batch_addr; >> >> } >> -/** >> - * SUBTEST: basic-store >> - * Description: Basic test to verify store dword. >> - * SUBTEST: basic-cond-batch >> - * Description: Basic test to verify cond batch end instruction. >> - * SUBTEST: basic-all >> - * Description: Test to verify store dword on all available engines. >> - */ >> -static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instance *eci) >> + >> +static void basic_inst_size(int fd, int inst_type, >> + struct drm_xe_engine_class_instance *eci, >> + uint16_t cpu_caching, size_t bo_size) >> { >> struct drm_xe_sync sync[2] = { >> { .type = DRM_XE_SYNC_TYPE_SYNCOBJ, .flags = DRM_XE_SYNC_FLAG_SIGNAL, }, >> @@ -117,7 +112,6 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >> uint32_t exec_queue; >> uint32_t bind_engine; >> uint32_t syncobj; >> - size_t bo_size; >> int value = 0x123456; >> uint64_t addr = 0x100000; >> uint32_t bo = 0; >> @@ -127,12 +121,16 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >> sync[1].handle = syncobj; >> >> vm = xe_vm_create(fd, 0, 0); >> - bo_size = sizeof(*data); >> - bo_size = xe_bb_size(fd, bo_size); >> >> - bo = xe_bo_create(fd, vm, bo_size, >> - vram_if_possible(fd, eci->gt_id), >> - DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); >> + if (cpu_caching) >> + bo = xe_bo_create_caching(fd, vm, bo_size, >> + vram_if_possible(fd, eci->gt_id), >> + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM, >> + cpu_caching); >> + else >> + bo = xe_bo_create(fd, vm, bo_size, >> + vram_if_possible(fd, eci->gt_id), >> + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); >> >> exec_queue = xe_exec_queue_create(fd, vm, eci, 0); >> bind_engine = xe_bind_exec_queue_create(fd, vm, 0); >> @@ -167,6 +165,66 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >> xe_vm_destroy(fd, vm); >> } >> >> + >> +/** >> + * SUBTEST: basic-store >> + * Description: Basic test to verify store dword. >> + * SUBTEST: basic-cond-batch >> + * Description: Basic test to verify cond batch end instruction. >> + * SUBTEST: basic-all >> + * Description: Test to verify store dword on all available engines. >> + */ >> +static void basic_inst(int fd, int inst_type, >> + struct drm_xe_engine_class_instance *eci, >> + uint16_t cpu_caching) >> +{ >> + size_t bo_size; >> + >> + bo_size = sizeof(struct data); >> + bo_size = xe_bb_size(fd, bo_size); >> + >> + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); >> +} >> + >> +/** >> + * SUBTEST: basic-store-benchmark >> + * Description: Basic test to verify time taken for doing store dword with various size. >> + */ >> +static void basic_inst_benchmark(int fd, int inst_type, >> + struct drm_xe_engine_class_instance *eci, >> + uint16_t cpu_caching) >> +{ >> + struct { >> + size_t size; >> + const char *name; >> + } sizes[] = { >> + {SZ_4K, "SZ_4K"}, >> + {SZ_2M, "SZ_2M"}, >> + {SZ_64M, "SZ_64M"}, >> + {SZ_128M, "SZ_128M"}, >> + {SZ_256M, "SZ_256M"}, >> + {SZ_1G, "SZ_1G"} > Could you use more human-friendly strings here? 4KB, 2MB, ...1GB Sure, will do that. > >> + }; >> + >> + struct timeval start, end; >> + long seconds, useconds, utime; >> + >> + for (size_t i = 0; i < ARRAY_SIZE(sizes); ++i) { >> + size_t bo_size = sizes[i].size; >> + const char *size_name = sizes[i].name; >> + >> + gettimeofday(&start, NULL); >> + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); >> + gettimeofday(&end, NULL); >> + >> + seconds = end.tv_sec - start.tv_sec; >> + useconds = end.tv_usec - start.tv_usec; >> + utime = (seconds * 1000000) + useconds; > imho there is igt function for such time measure. Do you mean igt_nsec_elapsed() > >> + >> + igt_info("Time taken for size %s: %ld us\n", size_name, utime); >> + } >> +} >> + >> #define PAGES 1 >> #define NCACHELINES (4096/64) >> /** >> @@ -342,12 +400,30 @@ igt_main >> >> igt_subtest("basic-store") { >> engine = xe_engine(fd, 1); >> - basic_inst(fd, STORE, &engine->instance); >> + basic_inst(fd, COND_BATCH, &engine->instance, 0); >> + } >> + >> + igt_subtest_with_dynamic("basic-store-benchmark") { >> + struct dyn { >> + const char *name; >> + int cache; >> + } tests[] = { >> + {"WC", DRM_XE_GEM_CPU_CACHING_WC}, >> + {"WB", DRM_XE_GEM_CPU_CACHING_WB} >> + }; >> + /* Enable for iGFX only for now */ >> + igt_require(! xe_has_vram(fd)); > -------------------- ^ > Please use checkpatch.pl for similar hints. Took me a while find the issue :D. I tend to do that but I guess I have to add a alias that will do a check patch before sending. > > Could you test with 0 for dGFX? with fd == 0 ? I think DRM_XE_GEM_CPU_CACHING_WB doesn't work for dGPU. I have to check that on live machine. > >> + >> + for (int i = 0; i < ARRAY_SIZE(tests); i++) { >> + igt_dynamic_f("%s", tests[i].name); > ----------------------------------------------^ > This is the reason you didn't see dynamic tests running with > --dyn WC, it should be: it should be what ? You are keep a secret :) > >> + engine = xe_engine(fd, 1); >> + basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); >> + } > igt_dynamic_f("%s", tests[i].name) { > engine = xe_engine(fd, 1); > basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); > } > > Btw should you add a skip if engine == NULL? Yes, that should be safer. Thanks, Nirmoy > >> + } >> } >> >> igt_subtest("basic-cond-batch") { >> engine = xe_engine(fd, 1); >> - basic_inst(fd, COND_BATCH, &engine->instance); >> + basic_inst(fd, COND_BATCH, &engine->instance, 0); >> } >> >> igt_subtest_with_dynamic("basic-all") { >> @@ -356,7 +432,7 @@ igt_main >> xe_engine_class_string(hwe->engine_class), >> hwe->engine_instance, >> hwe->gt_id); >> - basic_inst(fd, STORE, hwe); >> + basic_inst(fd, STORE, hwe, 0); >> } >> } >> >> -- >> 2.42.0 >> [-- Attachment #2: Type: text/html, Size: 9618 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark 2024-07-01 7:59 ` Nirmoy Das @ 2024-07-01 18:12 ` Kamil Konieczny 2024-07-03 14:30 ` Nirmoy Das 0 siblings, 1 reply; 8+ messages in thread From: Kamil Konieczny @ 2024-07-01 18:12 UTC (permalink / raw) To: igt-dev; +Cc: Nirmoy Das, Nirmoy Das Hi Nirmoy, On 2024-07-01 at 09:59:28 +0200, Nirmoy Das wrote: > Hi Kamil, > > On 6/28/2024 7:02 PM, Kamil Konieczny wrote: > > Hi Nirmoy, > > On 2024-06-25 at 15:08:16 +0200, Nirmoy Das wrote: > > > > test names should use '-' as separator, you also used other > > name so: > > [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark > > > > should be: > > [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic-store-benchmark > Looks like I misunderstood your last comment. Will fix it. > > > > > Add basic_inst_benchmark to benchmark this basic operation > > ---------- ^----^ > > Same here, use '-' as separator, s/_inst_/-store-/ > > > > > for BO sizes to get basic understanding how long it takes > > > bind a BO and run simple GPU command on it. > > > > > > This not a CI test but rather for developer to identify various > > > bottleneck/regression in BO binding. > > > > > > Signed-off-by: Nirmoy Das<nirmoy.das@intel.com> > > > --- > > > tests/intel/xe_exec_store.c | 112 ++++++++++++++++++++++++++++++------ > > > 1 file changed, 94 insertions(+), 18 deletions(-) > > > > > > diff --git a/tests/intel/xe_exec_store.c b/tests/intel/xe_exec_store.c > > > index c872c22d5..aaabdbec3 100644 > > > --- a/tests/intel/xe_exec_store.c > > > +++ b/tests/intel/xe_exec_store.c > > > @@ -93,15 +93,10 @@ static void persistance_batch(struct data *data, uint64_t addr) > > > data->addr = batch_addr; > > > } > > > -/** > > > - * SUBTEST: basic-store > > > - * Description: Basic test to verify store dword. > > > - * SUBTEST: basic-cond-batch > > > - * Description: Basic test to verify cond batch end instruction. > > > - * SUBTEST: basic-all > > > - * Description: Test to verify store dword on all available engines. > > > - */ > > > -static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instance *eci) > > > + > > > +static void basic_inst_size(int fd, int inst_type, > > > + struct drm_xe_engine_class_instance *eci, > > > + uint16_t cpu_caching, size_t bo_size) > > > { > > > struct drm_xe_sync sync[2] = { > > > { .type = DRM_XE_SYNC_TYPE_SYNCOBJ, .flags = DRM_XE_SYNC_FLAG_SIGNAL, }, > > > @@ -117,7 +112,6 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > > > uint32_t exec_queue; > > > uint32_t bind_engine; > > > uint32_t syncobj; > > > - size_t bo_size; > > > int value = 0x123456; > > > uint64_t addr = 0x100000; > > > uint32_t bo = 0; > > > @@ -127,12 +121,16 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > > > sync[1].handle = syncobj; > > > vm = xe_vm_create(fd, 0, 0); > > > - bo_size = sizeof(*data); > > > - bo_size = xe_bb_size(fd, bo_size); > > > - bo = xe_bo_create(fd, vm, bo_size, > > > - vram_if_possible(fd, eci->gt_id), > > > - DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); > > > + if (cpu_caching) > > > + bo = xe_bo_create_caching(fd, vm, bo_size, > > > + vram_if_possible(fd, eci->gt_id), > > > + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM, > > > + cpu_caching); > > > + else > > > + bo = xe_bo_create(fd, vm, bo_size, > > > + vram_if_possible(fd, eci->gt_id), > > > + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); > > > exec_queue = xe_exec_queue_create(fd, vm, eci, 0); > > > bind_engine = xe_bind_exec_queue_create(fd, vm, 0); > > > @@ -167,6 +165,66 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc > > > xe_vm_destroy(fd, vm); > > > } > > > + > > > +/** > > > + * SUBTEST: basic-store > > > + * Description: Basic test to verify store dword. > > > + * SUBTEST: basic-cond-batch > > > + * Description: Basic test to verify cond batch end instruction. > > > + * SUBTEST: basic-all > > > + * Description: Test to verify store dword on all available engines. > > > + */ > > > +static void basic_inst(int fd, int inst_type, > > > + struct drm_xe_engine_class_instance *eci, > > > + uint16_t cpu_caching) > > > +{ > > > + size_t bo_size; > > > + > > > + bo_size = sizeof(struct data); > > > + bo_size = xe_bb_size(fd, bo_size); > > > + > > > + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); > > > +} > > > + > > > +/** > > > + * SUBTEST: basic-store-benchmark > > > + * Description: Basic test to verify time taken for doing store dword with various size. > > > + */ > > > +static void basic_inst_benchmark(int fd, int inst_type, > > > + struct drm_xe_engine_class_instance *eci, > > > + uint16_t cpu_caching) > > > +{ > > > + struct { > > > + size_t size; > > > + const char *name; > > > + } sizes[] = { > > > + {SZ_4K, "SZ_4K"}, > > > + {SZ_2M, "SZ_2M"}, > > > + {SZ_64M, "SZ_64M"}, > > > + {SZ_128M, "SZ_128M"}, > > > + {SZ_256M, "SZ_256M"}, > > > + {SZ_1G, "SZ_1G"} > > Could you use more human-friendly strings here? 4KB, 2MB, ...1GB > Sure, will do that. > > > > > + }; > > > + > > > + struct timeval start, end; > > > + long seconds, useconds, utime; > > > + > > > + for (size_t i = 0; i < ARRAY_SIZE(sizes); ++i) { > > > + size_t bo_size = sizes[i].size; > > > + const char *size_name = sizes[i].name; > > > + > > > + gettimeofday(&start, NULL); > > > + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); > > > + gettimeofday(&end, NULL); > > > + > > > + seconds = end.tv_sec - start.tv_sec; > > > + useconds = end.tv_usec - start.tv_usec; > > > + utime = (seconds * 1000000) + useconds; > > imho there is igt function for such time measure. > Do you mean igt_nsec_elapsed() There are: igt_core.h:double igt_time_elapsed(struct timespec *then, igt_core.h:uint64_t igt_nsec_elapsed(struct timespec *start); igt_core.h:static inline uint32_t igt_seconds_elapsed(struct timespec *start) Choose what you need. > > > > > + > > > + igt_info("Time taken for size %s: %ld us\n", size_name, utime); > > > + } > > > +} > > > + > > > #define PAGES 1 > > > #define NCACHELINES (4096/64) > > > /** > > > @@ -342,12 +400,30 @@ igt_main > > > igt_subtest("basic-store") { > > > engine = xe_engine(fd, 1); > > > - basic_inst(fd, STORE, &engine->instance); > > > + basic_inst(fd, COND_BATCH, &engine->instance, 0); > > > + } > > > + > > > + igt_subtest_with_dynamic("basic-store-benchmark") { > > > + struct dyn { > > > + const char *name; > > > + int cache; > > > + } tests[] = { > > > + {"WC", DRM_XE_GEM_CPU_CACHING_WC}, > > > + {"WB", DRM_XE_GEM_CPU_CACHING_WB} > > > + }; > > > + /* Enable for iGFX only for now */ > > > + igt_require(! xe_has_vram(fd)); > > -------------------- ^ > > Please use checkpatch.pl for similar hints. > Took me a while find the issue :D. I tend to do that but I guess I have to > add a alias that will do a check patch before sending. > > > > Could you test with 0 for dGFX? > > with fd == 0 ? > > I think DRM_XE_GEM_CPU_CACHING_WB doesn't work for dGPU. I have to check > that on live machine. > > > > > > + > > > + for (int i = 0; i < ARRAY_SIZE(tests); i++) { > > > + igt_dynamic_f("%s", tests[i].name); > > ----------------------------------------------^ > > This is the reason you didn't see dynamic tests running with > > --dyn WC, it should be: > it should be what ? You are keep a secret :) I see, I should explicitly point semicolon there ';' This will run empty dynamic subtest: igt_dynamic_f("%s", tests[i].name); While what you wanted was written below, let me copy-paste: igt_dynamic_f("%s", tests[i].name) { engine = xe_engine(fd, 1); basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); } What I was asking was does it make sense to benchmark with cache value 0 on dGPU? Regards, Kamil > > > > > + engine = xe_engine(fd, 1); > > > + basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); > > > + } > > igt_dynamic_f("%s", tests[i].name) { > > engine = xe_engine(fd, 1); > > basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); > > } > > > > Btw should you add a skip if engine == NULL? > > Yes, that should be safer. > > > Thanks, > > Nirmoy > > > > > > + } > > > } > > > igt_subtest("basic-cond-batch") { > > > engine = xe_engine(fd, 1); > > > - basic_inst(fd, COND_BATCH, &engine->instance); > > > + basic_inst(fd, COND_BATCH, &engine->instance, 0); > > > } > > > igt_subtest_with_dynamic("basic-all") { > > > @@ -356,7 +432,7 @@ igt_main > > > xe_engine_class_string(hwe->engine_class), > > > hwe->engine_instance, > > > hwe->gt_id); > > > - basic_inst(fd, STORE, hwe); > > > + basic_inst(fd, STORE, hwe, 0); > > > } > > > } > > > -- > > > 2.42.0 > > > ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark 2024-07-01 18:12 ` Kamil Konieczny @ 2024-07-03 14:30 ` Nirmoy Das 0 siblings, 0 replies; 8+ messages in thread From: Nirmoy Das @ 2024-07-03 14:30 UTC (permalink / raw) To: Kamil Konieczny, igt-dev, Nirmoy Das Hi Kamil, On 7/1/2024 8:12 PM, Kamil Konieczny wrote: > Hi Nirmoy, > On 2024-07-01 at 09:59:28 +0200, Nirmoy Das wrote: >> Hi Kamil, >> >> On 6/28/2024 7:02 PM, Kamil Konieczny wrote: >>> Hi Nirmoy, >>> On 2024-06-25 at 15:08:16 +0200, Nirmoy Das wrote: >>> >>> test names should use '-' as separator, you also used other >>> name so: >>> [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark >>> >>> should be: >>> [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic-store-benchmark >> Looks like I misunderstood your last comment. Will fix it. >>>> Add basic_inst_benchmark to benchmark this basic operation >>> ---------- ^----^ >>> Same here, use '-' as separator, s/_inst_/-store-/ >>> >>>> for BO sizes to get basic understanding how long it takes >>>> bind a BO and run simple GPU command on it. >>>> >>>> This not a CI test but rather for developer to identify various >>>> bottleneck/regression in BO binding. >>>> >>>> Signed-off-by: Nirmoy Das<nirmoy.das@intel.com> >>>> --- >>>> tests/intel/xe_exec_store.c | 112 ++++++++++++++++++++++++++++++------ >>>> 1 file changed, 94 insertions(+), 18 deletions(-) >>>> >>>> diff --git a/tests/intel/xe_exec_store.c b/tests/intel/xe_exec_store.c >>>> index c872c22d5..aaabdbec3 100644 >>>> --- a/tests/intel/xe_exec_store.c >>>> +++ b/tests/intel/xe_exec_store.c >>>> @@ -93,15 +93,10 @@ static void persistance_batch(struct data *data, uint64_t addr) >>>> data->addr = batch_addr; >>>> } >>>> -/** >>>> - * SUBTEST: basic-store >>>> - * Description: Basic test to verify store dword. >>>> - * SUBTEST: basic-cond-batch >>>> - * Description: Basic test to verify cond batch end instruction. >>>> - * SUBTEST: basic-all >>>> - * Description: Test to verify store dword on all available engines. >>>> - */ >>>> -static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instance *eci) >>>> + >>>> +static void basic_inst_size(int fd, int inst_type, >>>> + struct drm_xe_engine_class_instance *eci, >>>> + uint16_t cpu_caching, size_t bo_size) >>>> { >>>> struct drm_xe_sync sync[2] = { >>>> { .type = DRM_XE_SYNC_TYPE_SYNCOBJ, .flags = DRM_XE_SYNC_FLAG_SIGNAL, }, >>>> @@ -117,7 +112,6 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >>>> uint32_t exec_queue; >>>> uint32_t bind_engine; >>>> uint32_t syncobj; >>>> - size_t bo_size; >>>> int value = 0x123456; >>>> uint64_t addr = 0x100000; >>>> uint32_t bo = 0; >>>> @@ -127,12 +121,16 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >>>> sync[1].handle = syncobj; >>>> vm = xe_vm_create(fd, 0, 0); >>>> - bo_size = sizeof(*data); >>>> - bo_size = xe_bb_size(fd, bo_size); >>>> - bo = xe_bo_create(fd, vm, bo_size, >>>> - vram_if_possible(fd, eci->gt_id), >>>> - DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); >>>> + if (cpu_caching) >>>> + bo = xe_bo_create_caching(fd, vm, bo_size, >>>> + vram_if_possible(fd, eci->gt_id), >>>> + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM, >>>> + cpu_caching); >>>> + else >>>> + bo = xe_bo_create(fd, vm, bo_size, >>>> + vram_if_possible(fd, eci->gt_id), >>>> + DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM); >>>> exec_queue = xe_exec_queue_create(fd, vm, eci, 0); >>>> bind_engine = xe_bind_exec_queue_create(fd, vm, 0); >>>> @@ -167,6 +165,66 @@ static void basic_inst(int fd, int inst_type, struct drm_xe_engine_class_instanc >>>> xe_vm_destroy(fd, vm); >>>> } >>>> + >>>> +/** >>>> + * SUBTEST: basic-store >>>> + * Description: Basic test to verify store dword. >>>> + * SUBTEST: basic-cond-batch >>>> + * Description: Basic test to verify cond batch end instruction. >>>> + * SUBTEST: basic-all >>>> + * Description: Test to verify store dword on all available engines. >>>> + */ >>>> +static void basic_inst(int fd, int inst_type, >>>> + struct drm_xe_engine_class_instance *eci, >>>> + uint16_t cpu_caching) >>>> +{ >>>> + size_t bo_size; >>>> + >>>> + bo_size = sizeof(struct data); >>>> + bo_size = xe_bb_size(fd, bo_size); >>>> + >>>> + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); >>>> +} >>>> + >>>> +/** >>>> + * SUBTEST: basic-store-benchmark >>>> + * Description: Basic test to verify time taken for doing store dword with various size. >>>> + */ >>>> +static void basic_inst_benchmark(int fd, int inst_type, >>>> + struct drm_xe_engine_class_instance *eci, >>>> + uint16_t cpu_caching) >>>> +{ >>>> + struct { >>>> + size_t size; >>>> + const char *name; >>>> + } sizes[] = { >>>> + {SZ_4K, "SZ_4K"}, >>>> + {SZ_2M, "SZ_2M"}, >>>> + {SZ_64M, "SZ_64M"}, >>>> + {SZ_128M, "SZ_128M"}, >>>> + {SZ_256M, "SZ_256M"}, >>>> + {SZ_1G, "SZ_1G"} >>> Could you use more human-friendly strings here? 4KB, 2MB, ...1GB >> Sure, will do that. >>>> + }; >>>> + >>>> + struct timeval start, end; >>>> + long seconds, useconds, utime; >>>> + >>>> + for (size_t i = 0; i < ARRAY_SIZE(sizes); ++i) { >>>> + size_t bo_size = sizes[i].size; >>>> + const char *size_name = sizes[i].name; >>>> + >>>> + gettimeofday(&start, NULL); >>>> + basic_inst_size(fd, inst_type, eci, cpu_caching, bo_size); >>>> + gettimeofday(&end, NULL); >>>> + >>>> + seconds = end.tv_sec - start.tv_sec; >>>> + useconds = end.tv_usec - start.tv_usec; >>>> + utime = (seconds * 1000000) + useconds; >>> imho there is igt function for such time measure. >> Do you mean igt_nsec_elapsed() > There are: > > igt_core.h:double igt_time_elapsed(struct timespec *then, > > igt_core.h:uint64_t igt_nsec_elapsed(struct timespec *start); > > igt_core.h:static inline uint32_t igt_seconds_elapsed(struct timespec *start) > > Choose what you need. > >>>> + >>>> + igt_info("Time taken for size %s: %ld us\n", size_name, utime); >>>> + } >>>> +} >>>> + >>>> #define PAGES 1 >>>> #define NCACHELINES (4096/64) >>>> /** >>>> @@ -342,12 +400,30 @@ igt_main >>>> igt_subtest("basic-store") { >>>> engine = xe_engine(fd, 1); >>>> - basic_inst(fd, STORE, &engine->instance); >>>> + basic_inst(fd, COND_BATCH, &engine->instance, 0); >>>> + } >>>> + >>>> + igt_subtest_with_dynamic("basic-store-benchmark") { >>>> + struct dyn { >>>> + const char *name; >>>> + int cache; >>>> + } tests[] = { >>>> + {"WC", DRM_XE_GEM_CPU_CACHING_WC}, >>>> + {"WB", DRM_XE_GEM_CPU_CACHING_WB} >>>> + }; >>>> + /* Enable for iGFX only for now */ >>>> + igt_require(! xe_has_vram(fd)); >>> -------------------- ^ >>> Please use checkpatch.pl for similar hints. >> Took me a while find the issue :D. I tend to do that but I guess I have to >> add a alias that will do a check patch before sending. >>> Could you test with 0 for dGFX? >> with fd == 0 ? >> >> I think DRM_XE_GEM_CPU_CACHING_WB doesn't work for dGPU. I have to check >> that on live machine. >> >>>> + >>>> + for (int i = 0; i < ARRAY_SIZE(tests); i++) { >>>> + igt_dynamic_f("%s", tests[i].name); >>> ----------------------------------------------^ >>> This is the reason you didn't see dynamic tests running with >>> --dyn WC, it should be: >> it should be what ? You are keep a secret :) > I see, I should explicitly point semicolon there ';' > This will run empty dynamic subtest: > > igt_dynamic_f("%s", tests[i].name); > > While what you wanted was written below, let me copy-paste: > > igt_dynamic_f("%s", tests[i].name) { > engine = xe_engine(fd, 1); > basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); > } Ah, now I see my stupidity! > > What I was asking was does it make sense to benchmark with > cache value 0 on dGPU? Yes, with 0 then a default value will be picked which for dGPU is WC. I will disable WB cache on dGPU. Thanks, Nirmoy > > Regards, > Kamil > >>>> + engine = xe_engine(fd, 1); >>>> + basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); >>>> + } >>> igt_dynamic_f("%s", tests[i].name) { >>> engine = xe_engine(fd, 1); >>> basic_inst_benchmark(fd, STORE, &engine->instance, tests[i].cache); >>> } >>> >>> Btw should you add a skip if engine == NULL? >> Yes, that should be safer. >> >> >> Thanks, >> >> Nirmoy >> >>>> + } >>>> } >>>> igt_subtest("basic-cond-batch") { >>>> engine = xe_engine(fd, 1); >>>> - basic_inst(fd, COND_BATCH, &engine->instance); >>>> + basic_inst(fd, COND_BATCH, &engine->instance, 0); >>>> } >>>> igt_subtest_with_dynamic("basic-all") { >>>> @@ -356,7 +432,7 @@ igt_main >>>> xe_engine_class_string(hwe->engine_class), >>>> hwe->engine_instance, >>>> hwe->gt_id); >>>> - basic_inst(fd, STORE, hwe); >>>> + basic_inst(fd, STORE, hwe, 0); >>>> } >>>> } >>>> -- >>>> 2.42.0 >>>> ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-07-03 14:30 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-06-25 13:08 [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Nirmoy Das 2024-06-25 14:11 ` ✓ CI.xeBAT: success for tests/intel/xe_exec_store: Add basic_inst_benchmark (rev3) Patchwork 2024-06-25 14:22 ` ✗ Fi.CI.BAT: failure " Patchwork 2024-06-25 16:07 ` ✓ CI.xeFULL: success " Patchwork 2024-06-28 17:02 ` [PATCH i-g-t v3] tests/intel/xe_exec_store: Add basic_inst_benchmark Kamil Konieczny 2024-07-01 7:59 ` Nirmoy Das 2024-07-01 18:12 ` Kamil Konieczny 2024-07-03 14:30 ` Nirmoy Das
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox