ci/llvmpipe: Move most of testing to shared 64-core runners at Google.
authorEmma Anholt <emma@anholt.net>
Tue, 8 Feb 2022 20:37:37 +0000 (12:37 -0800)
committerMarge Bot <emma+marge@anholt.net>
Wed, 23 Feb 2022 23:09:20 +0000 (23:09 +0000)
These runners are configured to have a single job take up the whole
runner, which means we get to use threads to our hearts content.  The pile
of cores means we don't need to spawn separate jobs to try to load-balance
across fdo's shared runner capacity.  Having dedicated runners means we
won't get our MRs blocked as much waiting on non-Mesa testing happening on
fd.o.

We manage to complete all of this llvmpipe testing in about 6:15.

Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14962>

src/gallium/drivers/llvmpipe/ci/deqp-llvmpipe.toml
src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml
src/gallium/drivers/llvmpipe/ci/llvmpipe-fails.txt
src/gallium/drivers/llvmpipe/ci/llvmpipe-flakes.txt
src/gallium/drivers/llvmpipe/ci/llvmpipe-skips.txt

index 2236ef9..3871e2c 100644 (file)
@@ -55,3 +55,26 @@ deqp_args = [
     "--deqp-gl-config-name=rgba8888d24s8ms0",
     "--deqp-visibility=hidden"
 ]
+
+[[deqp]]
+deqp = "/deqp/modules/egl/deqp-egl"
+caselists = ["/deqp/mustpass/egl-master.txt"]
+deqp_args = [
+    "--deqp-surface-width=256",
+    "--deqp-surface-height=256",
+    "--deqp-surface-type=pbuffer",
+    "--deqp-gl-config-name=rgba8888d24s8ms0",
+    "--deqp-visibility=hidden"
+]
+  [deqp.env]
+  # Stress test NIR clone/serialization for GLES3.1 (which should cover most of the featureset).
+  # Costs about 30% extra runtime.
+  NIR_DEBUG="clone,serialize"
+
+[[piglit]]
+piglit_folder = "/piglit"
+profile = "quick"
+process_isolation = true
+  [piglit.env]
+  # workaround for spec@arb_shader_texture_lod@execution@arb_shader_texture_lod-texgradcube
+  GALLIVM_PERF = "no_quad_lod"
index 221eaba..586a63c 100644 (file)
@@ -23,19 +23,6 @@ llvmpipe-piglit-cl:
   script:
     - install/piglit/run_cl.sh
 
-llvmpipe-piglit-gl:
-  extends:
-    - .test-gl
-    - .piglit-test
-    - .llvmpipe-test
-  parallel: 2
-  variables:
-    GALLIVM_PERF: "no_quad_lod"
-    LP_NUM_THREADS: 0
-    PIGLIT_PROFILES: quick
-  script:
-    - LD_LIBRARY_PATH=`pwd`/install xvfb-run --server-args='-noreset' install/piglit/piglit-runner.sh
-
 llvmpipe-traces:
   extends:
     - .test-gl
@@ -50,34 +37,30 @@ llvmpipe-traces:
 .llvmpipe-deqp-test:
   variables:
     GALLIVM_PERF: "nopt"
-    # Don't use threads inside llvmpipe, we've already got all cores
-    # busy at the deqp-runner level.
-    LP_NUM_THREADS: 0
   extends:
     - .test-gl
     - .deqp-test
     - .llvmpipe-test
 
-llvmpipe-deqp:
+llvmpipe:
+  tags:
+    - mesa-swrast
   variables:
     DEQP_SUITE: llvmpipe
-  parallel: 2
   extends: .llvmpipe-deqp-test
+  script:
+    - LD_LIBRARY_PATH=`pwd`/install xvfb-run --server-args='-noreset' install/deqp-runner.sh
 
 llvmpipe-deqp-asan:
   variables:
     DEQP_SUITE: llvmpipe-asan
     GPU_VERSION: llvmpipe-asan
     DEQP_FRACTION: 10
+    # Don't use threads inside llvmpipe, we've already got all cores
+    # busy at the deqp-runner level, and we don't want to overload fd.o
+    # shared runners
+    LP_NUM_THREADS: 0
   extends: .llvmpipe-deqp-test
   needs:
     - debian/x86_test-gl
     - debian-testing-asan
-
-llvmpipe-egl:
-  variables:
-    DEQP_VER: egl
-  extends:
-    - .llvmpipe-deqp-test
-  script:
-    - xvfb-run --server-args='-noreset' ./install/deqp-runner.sh
index a680e51..6e9fb35 100644 (file)
@@ -115,7 +115,6 @@ spec@arb_shader_image_load_store@early-z,Fail
 spec@arb_shader_image_load_store@early-z@occlusion query test/early-z pass,Fail
 
 spec@arb_shader_texture_lod@execution@arb_shader_texture_lod-texgrad,Fail
-spec@arb_timer_query@query gl_timestamp,Fail
 spec@egl 1.4@egl-copy-buffers,Fail
 spec@egl_khr_gl_image@egl_khr_gl_renderbuffer_image-clear-shared-image gl_depth_component24,Fail
 
index 468b0b5..642d2e4 100644 (file)
@@ -1,3 +1,4 @@
+dEQP-EGL.functional.sharing.gles2.multithread.random.programs.link.7
 dEQP-EGL.functional.sharing.gles2.multithread.random.programs.link.19
 dEQP-EGL.functional.sharing.gles2.multithread.random_egl_sync.programs.link.7
 dEQP-EGL.functional.sharing.gles2.multithread.simple_egl_server_sync.programs.link
index b23301f..f50b4c8 100644 (file)
@@ -29,3 +29,4 @@ longprim
 
 # Unreliable on shared runners due to timing
 ext_timer_query@time-elapsed
+spec@arb_timer_query@query gl_timestamp