diff options
Diffstat (limited to '.gitlab-ci/lava-deqp-runner.sh')
-rw-r--r-- | .gitlab-ci/lava-deqp-runner.sh | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/.gitlab-ci/lava-deqp-runner.sh b/.gitlab-ci/lava-deqp-runner.sh new file mode 100644 index 00000000000..28302ce375e --- /dev/null +++ b/.gitlab-ci/lava-deqp-runner.sh @@ -0,0 +1,111 @@ +#!/bin/sh + +GPU_VERSION="$1" + +DEQP_OPTIONS="--deqp-surface-width=256 --deqp-surface-height=256" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-visibility=hidden" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-log-images=disable" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-watchdog=enable" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-crashhandler=enable" +DEQP_OPTIONS="$DEQP_OPTIONS --deqp-surface-type=pbuffer" + +export LIBGL_DRIVERS_PATH=/mesa/lib/dri/ +export LD_LIBRARY_PATH=/mesa/lib/ +export MESA_GLES_VERSION_OVERRIDE=3.0 + +DEVFREQ_GOVERNOR=`echo /sys/devices/platform/*.gpu/devfreq/devfreq0/governor` +echo performance > $DEVFREQ_GOVERNOR + +cd /deqp/modules/gles2 + +# Generate test case list file +./deqp-gles2 $DEQP_OPTIONS --deqp-runmode=stdout-caselist | grep "TEST: dEQP-GLES2" | cut -d ' ' -f 2 > /tmp/case-list.txt + +# Disable for now tests that are very slow, either by just using lots of CPU or by crashing +FLIP_FLOPS=" + dEQP-GLES2.performance + dEQP-GLES2.stress + dEQP-GLES2.functional.fbo.render.depth. + dEQP-GLES2.functional.flush_finish. + " + +# These pass or fail seemingly at random +FLIP_FLOPS="$FLIP_FLOPS + dEQP-GLES2.performance + dEQP-GLES2.stress + dEQP-GLES2.functional.fbo.render.depth. + dEQP-GLES2.functional.flush_finish. + dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_neg_x_neg_z_and_pos_x_pos_z_and_neg_x_neg_y_pos_z + dEQP-GLES2.functional.clipping.triangle_vertex.clip_three.clip_pos_y_pos_z_and_neg_x_neg_y_pos_z_and_pos_x_pos_y_neg_z + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4 + dEQP-GLES2.functional.fbo.render.color.blend_rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4 + dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.color_clear.rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.fbo.render.recreate_depthbuffer. + dEQP-GLES2.functional.fbo.render.recreate_stencilbuffer. + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.rbo_rgba4 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgb + dEQP-GLES2.functional.fbo.render.shared_colorbuffer_clear.tex2d_rgba + dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgb5_a1 + dEQP-GLES2.functional.fbo.render.shared_colorbuffer.rbo_rgba4 + dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgb5_a1_depth_component16 + dEQP-GLES2.functional.fbo.render.shared_depthbuffer.rbo_rgba4_depth_component16 + dEQP-GLES2.functional.fbo.render.stencil_clear.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.npot_rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.rbo_rgb5_a1_stencil_index8 + dEQP-GLES2.functional.fbo.render.stencil.rbo_rgba4_stencil_index8 + dEQP-GLES2.functional.lifetime.attach.deleted_input.renderbuffer_framebuffer + dEQP-GLES2.functional.lifetime.attach.deleted_output.renderbuffer_framebuffer + dEQP-GLES2.functional.polygon_offset.fixed16_factor_0_slope + dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope + dEQP-GLES2.functional.shaders.invariance.highp.loop_4 + dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_vertex + dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec4_mat4_fragment + dEQP-GLES2.functional.shaders.operator.common_functions.smoothstep.mediump_vec3_vertex + dEQP-GLES2.functional.shaders.random.all_features.fragment.12 + dEQP-GLES2.functional.shaders.random.all_features.fragment.37 + dEQP-GLES2.functional.texture.units.2_units.mixed.1 + dEQP-GLES2.functional.texture.units.2_units.mixed.3 + dEQP-GLES2.functional.texture.units.2_units.only_2d.2 + dEQP-GLES2.functional.texture.units.4_units.mixed.5 + dEQP-GLES2.functional.texture.units.4_units.only_2d.0 + dEQP-GLES2.functional.texture.units.8_units.only_cube.2 + dEQP-GLES2.functional.texture.units.all_units.mixed.6 + dEQP-GLES2.functional.texture.units.all_units.only_cube.4 + dEQP-GLES2.functional.texture.units.all_units.only_cube.7 + dEQP-GLES2.functional.texture.units.all_units.only_cube.8 + " + +for test in $FLIP_FLOPS; do sed -i "/$test/d" /tmp/case-list.txt; done + +/deqp/deqp-volt --cts-build-dir=/deqp \ + --threads=8 \ + --test-names-file=/tmp/case-list.txt \ + --results-file=/tmp/results.txt \ + --no-passed-results \ + --regression-file=/deqp/deqp-panfrost-$GPU_VERSION-fails.txt \ + --no-rerun-tests \ + --print-regression \ + --no-print-fail \ + --no-print-quality \ + --no-colour-term \ + $DEQP_OPTIONS + +if [ $? -ne 0 ]; then + echo "Regressions detected" + echo "deqp: fail" +else + echo "No regressions detected" + echo "deqp: pass" +fi |