Mesa (main): panfrost/ci: Switch to suite support

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 24 18:27:49 UTC 2021


Module: Mesa
Branch: main
Commit: 324a32ac141de7ee3df52d5cc66cc0e7b776e526
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=324a32ac141de7ee3df52d5cc66cc0e7b776e526

Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date:   Tue Aug 10 14:22:02 2021 -0400

panfrost/ci: Switch to suite support

Use the new deqp-runner suite support to combine our dEQP-GLES2,
dEQP-GLES3, and dEQP-GLES31 jobs into a single job. This simplifies load
balancing, enabling us to expand our test coverage without impacting
wall clock time.

With the new infrastructure in place, we add KHR-GLES* jobs for Mali
G52. This would have caught some recent regressions. Once we hit
conformance it's essential we remain conformant.

Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12313>

---

 .../panfrost/ci/deqp-panfrost-g52-fails.txt        |  6 ++
 .../drivers/panfrost/ci/deqp-panfrost-g52.toml     | 41 ++++++++++++
 .../drivers/panfrost/ci/deqp-panfrost-g72.toml     | 41 ++++++++++++
 .../drivers/panfrost/ci/deqp-panfrost-t720.toml    |  9 +++
 .../drivers/panfrost/ci/deqp-panfrost-t760.toml    |  9 +++
 .../drivers/panfrost/ci/deqp-panfrost-t860.toml    | 28 ++++++++
 src/gallium/drivers/panfrost/ci/gitlab-ci.yml      | 77 ++++------------------
 7 files changed, 146 insertions(+), 65 deletions(-)

diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-fails.txt b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-fails.txt
index e69de29bb2d..9998751ea0b 100644
--- a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-fails.txt
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52-fails.txt
@@ -0,0 +1,6 @@
+# The shader assisted indirect draw path is buggy. The shader assisted indirect
+# draw path is disabled outside of CI due to these conformance issues.
+KHR-GLES31.core.compute_shader.pipeline-gen-draw-commands,Crash
+KHR-GLES31.core.draw_indirect.advanced-primitiveRestart-elements,Fail
+KHR-GLES31.core.draw_indirect.advanced-twoPass-transformFeedback-arrays,Crash
+KHR-GLES31.core.draw_indirect.advanced-twoPass-transformFeedback-elements,Fail
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52.toml b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52.toml
new file mode 100644
index 00000000000..5f60d682fff
--- /dev/null
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g52.toml
@@ -0,0 +1,41 @@
+# Basic test set
+[[deqp]]
+deqp = "/deqp/modules/gles2/deqp-gles2"
+caselists = ["/deqp/mustpass/gles2-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles3/deqp-gles3"
+caselists = ["/deqp/mustpass/gles3-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles31/deqp-gles31"
+caselists = ["/deqp/mustpass/gles31-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/external/openglcts/modules/glcts"
+caselists = [
+    "/deqp/mustpass/gles2-khr-master.txt",
+    "/deqp/mustpass/gles3-khr-master.txt",
+    "/deqp/mustpass/gles31-khr-master.txt",
+]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-g72.toml b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g72.toml
new file mode 100644
index 00000000000..5f60d682fff
--- /dev/null
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-g72.toml
@@ -0,0 +1,41 @@
+# Basic test set
+[[deqp]]
+deqp = "/deqp/modules/gles2/deqp-gles2"
+caselists = ["/deqp/mustpass/gles2-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles3/deqp-gles3"
+caselists = ["/deqp/mustpass/gles3-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles31/deqp-gles31"
+caselists = ["/deqp/mustpass/gles31-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/external/openglcts/modules/glcts"
+caselists = [
+    "/deqp/mustpass/gles2-khr-master.txt",
+    "/deqp/mustpass/gles3-khr-master.txt",
+    "/deqp/mustpass/gles31-khr-master.txt",
+]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-t720.toml b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t720.toml
new file mode 100644
index 00000000000..1bfb2dbdafb
--- /dev/null
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t720.toml
@@ -0,0 +1,9 @@
+# Basic test set
+[[deqp]]
+deqp = "/deqp/modules/gles2/deqp-gles2"
+caselists = ["/deqp/mustpass/gles2-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-t760.toml b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t760.toml
new file mode 100644
index 00000000000..1bfb2dbdafb
--- /dev/null
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t760.toml
@@ -0,0 +1,9 @@
+# Basic test set
+[[deqp]]
+deqp = "/deqp/modules/gles2/deqp-gles2"
+caselists = ["/deqp/mustpass/gles2-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
diff --git a/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860.toml b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860.toml
new file mode 100644
index 00000000000..549310c50e1
--- /dev/null
+++ b/src/gallium/drivers/panfrost/ci/deqp-panfrost-t860.toml
@@ -0,0 +1,28 @@
+# Basic test set
+[[deqp]]
+deqp = "/deqp/modules/gles2/deqp-gles2"
+caselists = ["/deqp/mustpass/gles2-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles3/deqp-gles3"
+caselists = ["/deqp/mustpass/gles3-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+
+[[deqp]]
+deqp = "/deqp/modules/gles31/deqp-gles31"
+caselists = ["/deqp/mustpass/gles31-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256", "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer", "--deqp-visibility=hidden",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+]
+fraction = 4
diff --git a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
index 9af4cdd3b0b..f7bd6ffee1b 100644
--- a/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
+++ b/src/gallium/drivers/panfrost/ci/gitlab-ci.yml
@@ -13,6 +13,7 @@ panfrost-t720-gles2:arm64:
     DEVICE_TYPE: sun50i-h6-pine-h64
     DTB: $DEVICE_TYPE
     GPU_VERSION: panfrost-t720
+    DEQP_SUITE: panfrost-t720
     DEQP_PARALLEL: 6
     DEQP_EXPECTED_RENDERER: T720
   tags:
@@ -29,6 +30,7 @@ panfrost-t760-gles2:armhf:
     GPU_VERSION: panfrost-t760
     BOOT_METHOD: depthcharge
     KERNEL_IMAGE_TYPE: ""
+    DEQP_SUITE: panfrost-t720
     DEQP_PARALLEL: 6
     DEQP_EXPECTED_RENDERER: T760
   tags:
@@ -72,36 +74,15 @@ panfrost-t760-traces:armhf:
   tags:
     - mesa-ci-x86-64-lava-rk3399-gru-kevin
 
-.panfrost-t860-gles2:arm64:
+panfrost-t860-gl:arm64:
+  parallel: 3
   extends:
     - .lava-test:arm64
     - .lava-rk3399-gru-kevin
   variables:
     DEQP_PARALLEL: 6
     DEQP_EXPECTED_RENDERER: T860
-
-panfrost-t860-gles3:arm64:
-  parallel: 2
-  extends:
-    - .lava-test:arm64
-    - .lava-rk3399-gru-kevin
-  variables:
-    DEQP_VER: gles3
-    DEQP_PARALLEL: 6
-    DEQP_EXPECTED_RENDERER: T860
-
-panfrost-t860-gles31:arm64:
-  extends:
-    - .lava-test:arm64
-    - .lava-rk3399-gru-kevin
-  variables:
-    DEQP_VER: gles31
-    PAN_MESA_DEBUG: "deqp,sync"
-    MESA_GLES_VERSION_OVERRIDE: "3.1"
-    MESA_GLSL_VERSION_OVERRIDE: 310
-    DEQP_FRACTION: 4
-    DEQP_PARALLEL: 1
-    DEQP_EXPECTED_RENDERER: T860
+    DEQP_SUITE: panfrost-t860
 
 panfrost-t860-traces:arm64:
   extends:
@@ -129,34 +110,16 @@ panfrost-t860-traces:arm64:
   tags:
     - mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
 
-.panfrost-g52-gles2:arm64:
-  extends:
-    - .lava-test:arm64
-    - .lava-meson-g12b-a311d-khadas-vim3
-  variables:
-    DEQP_PARALLEL: 6
-    DEQP_EXPECTED_RENDERER: G52
-
-panfrost-g52-gles3:arm64:
-  parallel: 2
+panfrost-g52-gl:arm64:
+  parallel: 3
   extends:
     - .lava-test:arm64
     - .lava-meson-g12b-a311d-khadas-vim3
   variables:
-    DEQP_VER: gles3
-    PAN_MESA_DEBUG: "deqp,sync"
     DEQP_PARALLEL: 6
+    DEQP_SUITE: panfrost-g52
     DEQP_EXPECTED_RENDERER: G52
-
-panfrost-g52-gles31:arm64:
-  extends:
-    - .lava-test:arm64
-    - .lava-meson-g12b-a311d-khadas-vim3
-  variables:
-    DEQP_VER: gles31
     PAN_MESA_DEBUG: "deqp,sync,indirect"
-    DEQP_PARALLEL: 6
-    DEQP_EXPECTED_RENDERER: G52
 
 .lava-acer-mt8183-cp311-3h-jacuzzi:
   extends:
@@ -171,31 +134,14 @@ panfrost-g52-gles31:arm64:
   tags:
     - mesa-ci-x86-64-lava-acer-mt8183-cp311-3h-jacuzzi
 
-.panfrost-g72-gles2:arm64:
-  extends:
-    - .lava-test:arm64
-    - .lava-acer-mt8183-cp311-3h-jacuzzi
-  variables:
-    DEQP_EXPECTED_RENDERER: G72
-
-.panfrost-g72-gles3:arm64:
-  parallel: 2
+.panfrost-g72-gl:arm64:
+  parallel: 3
   extends:
     - .lava-test:arm64
     - .lava-acer-mt8183-cp311-3h-jacuzzi
   variables:
-    DEQP_VER: gles3
-    PAN_MESA_DEBUG: "deqp,sync"
-    DEQP_EXPECTED_RENDERER: G72
-
-.panfrost-g72-gles31:arm64:
-  extends:
-    - .lava-test:arm64
-    - .lava-acer-mt8183-cp311-3h-jacuzzi
-  variables:
-    DEQP_VER: gles31
-    PAN_MESA_DEBUG: "deqp,sync"
     DEQP_EXPECTED_RENDERER: G72
+    DEQP_SUITE: panfrost-g72
 
 .panfrost-t820-gles2:arm64:
   extends:
@@ -208,5 +154,6 @@ panfrost-g52-gles31:arm64:
     GPU_VERSION: panfrost-t820
     DEQP_PARALLEL: 6
     DEQP_EXPECTED_RENDERER: T820
+    DEQP_SUITE: panfrost-t720
   tags:
     - mesa-ci-aarch64-lava-baylibre



More information about the mesa-commit mailing list