diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c76efa4cb38..7528432f996 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,6 +18,13 @@ include: - '/templates/debian.yml' - local: '.gitlab-ci/lava-gitlab-ci.yml' - local: '.gitlab-ci/test-source-dep.yml' + - local: 'src/amd/ci/gitlab-ci.yml' + - local: 'src/broadcom/ci/gitlab-ci.yml' + - local: 'src/freedreno/ci/gitlab-ci.yml' + - local: 'src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml' + - local: 'src/gallium/drivers/softpipe/ci/gitlab-ci.yml' + - local: 'src/gallium/drivers/virgl/ci/gitlab-ci.yml' + - local: 'src/gallium/drivers/zink/ci/gitlab-ci.yml' stages: - sanity @@ -1107,164 +1114,6 @@ meson-mingw32-x86_64: PIGLIT_HTML_SUMMARY: 0 PIGLIT_JUNIT_RESULTS: 1 -.llvmpipe-test: - extends: - - .llvmpipe-rules - variables: - LIBGL_ALWAYS_SOFTWARE: "true" - GALLIUM_DRIVER: "llvmpipe" - -llvmpipe-piglit-cl: - extends: - - .test-cl - - .piglit-test - - .llvmpipe-test - - .llvmpipe-cl-rules - variables: - LP_CL: 1 - LP_NUM_THREADS: 1 - PIGLIT_PROFILES: cl - PIGLIT_RESULTS: "llvmpipe-cl" - PIGLIT_OPTIONS: > - -x bswap -x phatk -x clz-optimizations - script: - - install/piglit/run_cl.sh - -llvmpipe-piglit-quick_gl: - extends: - - .test-gl - - .piglit-test - - .llvmpipe-test - variables: - GALLIVM_PERF: "no_filter_hacks" - LP_NUM_THREADS: 0 - PIGLIT_OPTIONS: > - --process-isolation false - -x egl_ext_device_ - -x egl_ext_platform_device - -x ext_timer_query@time-elapsed - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x max-texture-size - -x maxsize - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: "llvmpipe-quick_gl" - -llvmpipe-piglit-glslparser: - extends: - - .test-gl - - .piglit-test - - .llvmpipe-test - variables: - LP_NUM_THREADS: 0 - PIGLIT_PROFILES: glslparser - PIGLIT_RESULTS: "llvmpipe-glslparser" - -llvmpipe-piglit-quick_shader: - extends: - - .test-gl - - .piglit-test - - .llvmpipe-test - variables: - GALLIVM_PERF: "no_filter_hacks" - LP_NUM_THREADS: 1 - PIGLIT_PROFILES: quick_shader - PIGLIT_RESULTS: "llvmpipe-quick_shader" - -llvmpipe-traces: - extends: - - .test-gl - - .piglit-traces-test - - .llvmpipe-test - variables: - EGL_PLATFORM: "surfaceless" - PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-llvmpipe.yml" - PIGLIT_REPLAY_DEVICE_NAME: "gl-vmware-llvmpipe" - PIGLIT_RESULTS: "llvmpipe-replay" - -.zink-test: - extends: - - .zink-rules - variables: - MESA_LOADER_DRIVER_OVERRIDE: "zink" - ZINK_USE_LAVAPIPE: "true" - -zink-piglit-quick_gl: - extends: - - .test-gl - - .piglit-test - - .zink-test - variables: - LP_NUM_THREADS: 0 - PIGLIT_OPTIONS: > - -x arb_map_buffer_alignment@arb_map_buffer_alignment-map-invalidate-range - -x glx-make-current - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: "zink-quick_gl" - GALLIVM_PERF: "no_filter_hacks" - -.virgl-test: - extends: - - .test-gl - - .virgl-rules - variables: - LIBGL_ALWAYS_SOFTWARE: "true" - GALLIUM_DRIVER: "virpipe" - -virgl-traces: - extends: - - .virgl-test - - .piglit-traces-test - variables: - EGL_PLATFORM: "surfaceless" - PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-virgl.yml" - PIGLIT_REPLAY_DEVICE_NAME: "gl-virgl" - PIGLIT_RESULTS: "virgl-replay" - MESA_GLES_VERSION_OVERRIDE: "3.1" - MESA_GLSL_VERSION_OVERRIDE: "310" - -a630-traces: - extends: - - .piglit-traces-test - - .a630-test - variables: - BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" - BM_START_XORG: 1 - PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-freedreno.yml" - PIGLIT_REPLAY_DEVICE_NAME: "freedreno-a630" - PIGLIT_RESULTS: "freedreno-a630-replay" - # This lets us run several more traces which don't use any features we're - # missing. - MESA_GLSL_VERSION_OVERRIDE: "460" - MESA_GL_VERSION_OVERRIDE: "4.6" - artifacts: - reports: - junit: results/junit.xml - -radv-polaris10-traces: - extends: - - .test-radv - - .piglit-traces-test - - .test-manual - variables: - PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-radv.yml" - PIGLIT_REPLAY_DEVICE_NAME: "vk-amd-polaris10" - PIGLIT_RESULTS: "radv-polaris10-replay" - tags: - - polaris10 - -radv-raven-traces: - extends: - - .test-radv - - .piglit-traces-test - - .test-manual - variables: - PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-radv.yml" - PIGLIT_REPLAY_DEVICE_NAME: "vk-amd-raven" - PIGLIT_RESULTS: "radv-raven-replay" - tags: - - raven - .deqp-test: script: - ./install/deqp-runner.sh @@ -1287,143 +1136,6 @@ radv-raven-traces: paths: - results/ -llvmpipe-gles2: - variables: - DEQP_VER: gles2 - GALLIVM_PERF: "nopt,no_filter_hacks" - # Don't use threads inside llvmpipe, we've already got all cores - # busy at the deqp-runner level. - LP_NUM_THREADS: 0 - GPU_VERSION: llvmpipe - DEQP_EXPECTED_RENDERER: llvmpipe - extends: - - .test-gl - - .deqp-test - - .llvmpipe-test - -softpipe-gles2: - extends: - - llvmpipe-gles2 - - .softpipe-rules - variables: - GPU_VERSION: softpipe - GALLIUM_DRIVER: "softpipe" - DEQP_EXPECTED_RENDERER: softpipe - -softpipe-gles3: - variables: - DEQP_VER: gles3 - extends: softpipe-gles2 - -softpipe-gles31: - parallel: 2 - variables: - DEQP_VER: gles31 - extends: softpipe-gles2 - -softpipe-asan-gles31: - variables: - GPU_VERSION: softpipe-asan - DEQP_FRACTION: 10 - DEQP_VER: gles31 - TEST_LD_PRELOAD: libasan.so.5 - extends: softpipe-gles2 - needs: - - x86_test-gl - - meson-testing-asan - -softpipe-piglit-quick: - extends: - - .test-gl - - .piglit-test - - .softpipe-rules - variables: - GALLIUM_DRIVER: softpipe - # rasterpos skipped until we uprev piglit (commit ff2a7650be7349) - # triangle-rasterization skipped due to flakes thanks to it using a time-based random seed. - # glx-multithread-texture is flaky, undiagnosed - PIGLIT_OPTIONS: > - -x rasterpos - -x triangle-rasterization - -x glx-multithread-texture - -x egl_ext_device_ - -x egl_ext_platform_device - -x ext_timer_query@time-elapsed - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x max-texture-size - -x maxsize - -x fs-execution-ordering - -x local-id-explosion - -x arb_pipeline_statistics_query-comp - -x streaming-texture-leak - -x longprim - -x shader-mem-barrier - -x arb_gpu_shader_fp64 - -x arb_gpu_shader_int64 - -x arb_tessellation_shader - -x glsl-4.00 - -x glsl-4.10 - -x glsl-4.20 - -x glsl-4.30 - -x glsl-4.40 - -x glsl-4.50 - -x gpu_shader4 - -x gpu_shader5 - PIGLIT_PROFILES: quick_gl quick_shader - PIGLIT_RESULTS: softpipe-quick - -# Note that KHR-GL3* test sets include all tests from the previous -# version, so we only need to run one test list (unlike dEQP-GLES, -# where the test sets are separate). -softpipe-gl: - variables: - DEQP_VER: gl33 - extends: - - softpipe-gles2 - -virgl-gles2-on-gl: - variables: - DEQP_VER: gles2 - DEQP_NO_SAVE_RESULTS: 1 - GPU_VERSION: virgl-gl - # Don't use threads inside llvmpipe, we've already got all cores - # busy at the deqp-runner level. - LP_NUM_THREADS: 0 - DEQP_OPTIONS: "--deqp-log-images=disable" - DEQP_EXPECTED_RENDERER: virgl - extends: - - .deqp-test - - .virgl-test - -virgl-gles3-on-gl: - variables: - DEQP_VER: gles3 - DEQP_RUNNER_OPTIONS: "--timeout 180" - extends: virgl-gles2-on-gl - -virgl-gles31-on-gl: - parallel: 2 - variables: - DEQP_VER: gles31 - MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader" - extends: virgl-gles3-on-gl - -virgl-gl30-on-gl: - variables: - DEQP_VER: gl30 - extends: virgl-gles2-on-gl - -virgl-gl31-on-gl: - variables: - DEQP_VER: gl31 - extends: virgl-gles2-on-gl - -virgl-gl32-on-gl: - variables: - DEQP_VER: gl32 - extends: virgl-gles2-on-gl - # Rules for tests that should not be present in MRs or the main # project's pipeline (don't block marge or report red on # mesa/mesamaster) but should be present on pipelines in personal @@ -1440,206 +1152,6 @@ virgl-gl32-on-gl: variables: GIT_STRATEGY: none -virgl-gles2-on-gles: - variables: - VIRGL_HOST_API: GLES - GPU_VERSION: virgl-gles - extends: - - virgl-gles2-on-gl - - .test-manual - -virgl-gles3-on-gles: - variables: - VIRGL_HOST_API: GLES - GPU_VERSION: virgl-gles - extends: - - virgl-gles3-on-gl - - .test-manual - -virgl-gles31-on-gles: - variables: - VIRGL_HOST_API: GLES - GPU_VERSION: virgl-gles - extends: - - virgl-gles31-on-gl - - .test-manual - -.a630-test: - extends: - - .freedreno-test - variables: - BM_KERNEL: /lava-files/cheza-kernel - BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init" - GPU_VERSION: freedreno-a630 - BM_DTB: /lava-files/db820c.dtb - DEQP_EXPECTED_RENDERER: FD630 - tags: - - google-freedreno-cheza - script: - - ./install/bare-metal/cros-servo.sh - -a630_gles2: - extends: - - .baremetal-deqp-test - - .a630-test - variables: - DEQP_VER: gles2 - -a630_gles31: - extends: - - .baremetal-deqp-test - - .a630-test - variables: - DEQP_VER: gles31 - -a630_gles3: - extends: - - .baremetal-deqp-test - - .a630-test - variables: - DEQP_VER: gles3 - -a630_gl: - extends: - - .baremetal-deqp-test - - .a630-test - variables: - DEQP_VER: gl33 - -a630_gles_others: - extends: - - .baremetal-deqp-test - - .a630-test - variables: - BARE_METAL_TEST_SCRIPT: "/install/bare-metal/arm64_a630_gles_others.sh" - -a630_gles_asan: - extends: - - .baremetal-deqp-test - - .a630-test - - .baremetal-arm64-asan-test - variables: - DEQP_VER: gles31 - DEQP_FRACTION: 10 - GPU_VERSION: freedreno-a630-asan - -a630_vk: - extends: - - .baremetal-deqp-test-freedreno-vk - - .a630-test - parallel: 2 - variables: - DEQP_FRACTION: 4 - # Force binning in the main run, which makes sure we render at - # least 2 bins. This is the path that impacts the most different - # features. However, we end up with flaky results in - # dEQP-VK.binding_model.*.geometry and dEQP-VK.glsl.*_vertex. - TU_DEBUG: forcebin - -# Disabled by default until we can sort out what looks like timeouts before -# getting to the first test (or is it at cleanup after tests completed?). -# Clicking play can show you some useful areas for fixing turnip, though. -a630_vk_asan: - extends: - - .baremetal-deqp-test-freedreno-vk - - .a630-test - - .baremetal-arm64-asan-test - - .test-manual - variables: - DEQP_FRACTION: 100 - DEQP_PARALLEL: 4 # We get OOMkills if we go too wide with asan enabled - TU_DEBUG: forcebin - # Disable the leak checks, since the library gets dlclose()d and thus get - # totally useless leak reports. We can still catch buffer overflows. - ASAN_OPTIONS: "detect_leaks=0" - -# Do a separate sysmem pass over the testcases that really affect sysmem -# rendering. This is currently very flaky, leave it as an option for devs -# to click play on in their branches. -a630_vk_sysmem: - extends: - - .baremetal-deqp-test-freedreno-vk - - .a630-test - variables: - DEQP_FRACTION: 15 - DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*" - GPU_VERSION: freedreno-a630-bypass - TU_DEBUG: sysmem - -.a630_piglit: - extends: - - .piglit-test - - .a630-test - - .test-manual - variables: - BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" - BM_START_XORG: 1 - # Excluding various features we don't support to keep runtime down in - # deciding that they aren't supported. - # - # Also excluding some particularly slow tests (gl-1.3-texture-env takes 100s) - # - # Known flakes in the list are between "arb_blend_func_extended" and - # "varray-disabled" - # - # vs-output-array-vec2-index-wr-before-gs is skipped because it causes - # a flood of GPU hangs and makes the rest of the job flakey - # - # vs-clip-distance/vertex-enables skipped because they seem to be flaky in - # parallel with other tests (reliably fails on its own) - PIGLIT_OPTIONS: >- - -x vs-output-array-vec2-index-wr-before-gs - -x fixed-clip-enables - -x vs-clip-distance-enables - -x vs-clip-vertex-enables - -x arb_blend_func_extended-fbo-extended-blend-pattern_gles2 - -x clear-accum - -x copypixels-sync - -x copyteximage-border - -x copytexsubimage - -x draw-sync - -x getteximage-simple - -x gl30basic - -x tcs-input - -x tes-input - -x unaligned-blit - -x user-clip - -x varray-disabled - -x egl_ext_device_ - -x egl_ext_platform_device - -x ext_timer_query@time-elapsed - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x max-texture-size - -x maxsize - -x arb_gpu_shader_fp64 - -x arb_gpu_shader_gpu5 - -x arb_gpu_shader_int64 - -x glsl-4.00 - -x glsl-4.10 - -x glsl-4.20 - -x glsl-4.30 - -x glsl-4.40 - -x glsl-4.50 - -x glsl-4.60 - -x gl-1.3-texture-env - -# Takes ~20 minutes, so manual-only until we can sort out runtime. -a630_piglit_gl: - extends: - - .a630_piglit - - .test-manual - variables: - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: freedreno-a630-gl - -a630_piglit_shader: - extends: - - .a630_piglit - variables: - PIGLIT_PROFILES: quick_shader - PIGLIT_RESULTS: freedreno-a630-shader - .baremetal-test: extends: - .ci-run-policy @@ -1679,455 +1191,8 @@ a630_piglit_shader: - job: meson-arm64-asan artifacts: false -.freedreno-test: - extends: - - .baremetal-test - - .use-arm64_test - - .freedreno-rules - variables: - MINIO_ARTIFACT_NAME: mesa-arm64 - BM_ROOTFS: /lava-files/rootfs-arm64 - FLAKES_CHANNEL: "#freedreno-ci" - PIGLIT_PLATFORM: mixed_glx_egl - script: - - ./install/bare-metal/fastboot.sh - needs: - - arm64_test - - job: meson-arm64 - artifacts: false - tags: - - google-freedreno-db410c - .baremetal-deqp-test: variables: BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" DEQP_SKIPS: deqp-default-skips.txt DEQP_PARALLEL: 0 # Default to number of CPUs - -.baremetal-deqp-test-freedreno-vk: - extends: - - .baremetal-deqp-test - variables: - DEQP_VER: vk - VK_DRIVER: freedreno - -.arm64-a306-test: - extends: - - .freedreno-test - variables: - BM_KERNEL: /lava-files/Image.gz - BM_DTB: /lava-files/apq8016-sbc.dtb - BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8" - GPU_VERSION: freedreno-a307 - DEQP_EXPECTED_RENDERER: FD307 - -a306_gles2: - extends: - - .baremetal-deqp-test - - .arm64-a306-test - variables: - DEQP_VER: gles2 - -a306_gles3: - extends: - - .baremetal-deqp-test - - .arm64-a306-test - parallel: 3 - variables: - DEQP_VER: gles3 - DEQP_FRACTION: 2 - -# Fractional runs with debug options. Note that since we're not -# hitting the iommu faults, we can run in parallel (derive from gles2, not gles3). -a306_gles3_options: - extends: - - .baremetal-deqp-test - - .arm64-a306-test - variables: - DEQP_VER: gles3 - script: - # Check that the non-constbuf UBO case works. - - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh - -.arm64-a530-test: - extends: - - .freedreno-test - variables: - BM_KERNEL: /lava-files/db820c-kernel - BM_DTB: /lava-files/db820c.dtb - # Disable SMP because only CPU 0 is at a freq higher than 19mhz on - # current upstream kernel. - BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp" - FDO_CI_CONCURRENT: 1 - GPU_VERSION: freedreno-a530 - DEQP_EXPECTED_RENDERER: FD530 - tags: - - google-freedreno-db820c - -a530_gles2: - extends: - - .baremetal-deqp-test - - .arm64-a530-test - variables: - DEQP_VER: gles2 - parallel: 2 - -a530_gles3: - extends: - - .baremetal-deqp-test - - .arm64-a530-test - variables: - DEQP_VER: gles3 - DEQP_FRACTION: 40 - -a530_gles31: - extends: - - a530_gles3 - variables: - DEQP_VER: gles31 - DEQP_FRACTION: 10 - -.a530_piglit: - extends: - - .piglit-test - - .arm64-a530-test - - .test-manual - variables: - BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" - BM_START_XORG: 1 - # SMP is disabled in the current kernels for db820c. - FDO_CI_CONCURRENT: 1 - # Excluding for flakes in multisample (MSAA fails covered well by deqp, we - # can enable it once we stabilize that.) and other flakes from - # atomic_counters through userclip in the list. - # - # Also excluding some particularly slow tests (gl-1.3-texture-env) - # - # Check fastboot.sh for more piglit tests being excluded! - PIGLIT_OPTIONS: >- - -x atomic_counters - -x gl-1.0-blend-func - -x glsl-1.30@execution@clipping - -x user-clip - -x arb_texture_multisample - -x ext_framebuffer_multisample - -x egl_ext_device_ - -x egl_ext_platform_device - -x ext_timer_query@time-elapsed - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x max-texture-size - -x maxsize - -x arb_gpu_shader5 - -x arb_gpu_shader_fp64 - -x arb_gpu_shader_int64 - -x arb_tessellation_shader - -x glsl-1.50 - -x glsl-4.00 - -x glsl-4.10 - -x glsl-4.20 - -x glsl-4.30 - -x glsl-4.40 - -x glsl-4.50 - -x glsl-4.60 - -x gl-1.3-texture-env - -# Takes ~25 minutes, so manual-only until we can sort out runtime. -a530_piglit_gl: - extends: - - .a530_piglit - variables: - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: freedreno-a530-gl - -a530_piglit_shader: - extends: - - .a530_piglit - variables: - PIGLIT_PROFILES: quick_shader - PIGLIT_RESULTS: freedreno-a530-shader - -.vc4-rpi3-test:armhf: - extends: - - .baremetal-test-armhf - - .vc4-rules - - .use-armhf_test - variables: - BM_BOOTFS: /boot/armhf - BM_KERNEL_MODULES: vc4 - BM_ROOTFS: /lava-files/rootfs-armhf - BM_ROOTFS_EXTRA: /modules/armhf - GPU_VERSION: vc4-rpi3 - DEQP_EXPECTED_RENDERER: VC4 - script: - - ./install/bare-metal/poe-powered.sh - needs: - - job: armhf_test - artifacts: false - - meson-armhf - tags: - - igalia-rpi3 - -vc4-rpi3-gles2:armhf: - extends: - - .vc4-rpi3-test:armhf - parallel: 4 - variables: - BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" - DEQP_VER: gles2 - # The vc4s are so slow that it takes about a minute to get through the - # default 500 tests in a group, triggering the serial watchdog. - DEQP_RUNNER_OPTIONS: "--tests-per-group 250" - -.vc4-rpi3-piglit:armhf: - extends: - - .piglit-test - - .vc4-rpi3-test:armhf - - .test-manual - variables: - BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" - BM_POE_TIMEOUT: 180 - PIGLIT_OPTIONS: >- - --timeout 60 - -x .tesc - -x .tese - -x arb_gpu_shader_fp64 - -x arb_gpu_shader_gpu5 - -x arb_gpu_shader_int64 - -x arb_tessellation_shader - -x arb_texture_cube_map - -x clipflat - -x copypixels-sync - -x copyteximage - -x depthstencil-default_fb - -x draw-sync - -x egl_ext_device_ - -x egl_ext_platform_device - -x ext_framebuffer_multisample - -x ext_timer_query@time-elapsed - -x gl-1.0-blend-func - -x gl-1.3-texture-env - -x glsl-1.30 - -x glsl-3.30 - -x glsl-4.00 - -x glsl-4.10 - -x glsl-4.20 - -x glsl-4.30 - -x glsl-4.40 - -x glsl-4.50 - -x glsl-4.60 - -x glsl-es-3.00 - -x glsl-es-3.20 - -x glsl-fs-convolution-2 - -x glsl-vs-loop - -x glsl-vs-loop-nested - -x glsl-vs-mov-after-deref - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x image_load_store - -x longprim - -x masked-clear - -x max-texture-size - -x maxsize - -x ppgtt_memory_alignment - -x streaming-texture-leak - -x texturesize - PIGLIT_PLATFORM: gbm - -vc4-rpi3-piglit-quick_gl:armhf: - extends: - - .vc4-rpi3-piglit:armhf - variables: - FDO_CI_CONCURRENT: 1 - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: "vc4-rpi3-quick_gl" - -vc4-rpi3-piglit-quick_shader:armhf: - extends: - - .vc4-rpi3-piglit:armhf - variables: - FDO_CI_CONCURRENT: 2 - PIGLIT_PROFILES: quick_shader - PIGLIT_RESULTS: "vc4-rpi3-quick_shader" - -.v3d-rpi4-test:armhf: - extends: - - .baremetal-test-armhf - - .v3d-rules - - .use-armhf_test - variables: - BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" - BM_BOOTFS: /boot/armhf - BM_KERNEL_MODULES: v3d,vc4 - BM_POE_TIMEOUT: 300 - BM_ROOTFS: /lava-files/rootfs-armhf - BM_ROOTFS_EXTRA: /modules/armhf - DEQP_EXPECTED_RENDERER: V3D - GPU_VERSION: v3d-rpi4 - script: - - ./install/bare-metal/poe-powered.sh - needs: - - armhf_test - - meson-armhf - tags: - - igalia-rpi4 - -v3d-rpi4-gles31:armhf: - extends: - - .v3d-rpi4-test:armhf - parallel: 2 - variables: - DEQP_FRACTION: 2 - DEQP_VER: gles31 - -v3d-rpi4-gles3:armhf: - extends: - - .v3d-rpi4-test:armhf - parallel: 4 - variables: - DEQP_FRACTION: 2 - DEQP_VER: gles3 - -v3d-rpi4-gles2:armhf: - extends: - - .v3d-rpi4-test:armhf - variables: - DEQP_VER: gles2 - -.v3d-rpi4-piglit:armhf: - extends: - - .piglit-test - - .v3d-rpi4-test:armhf - - .test-manual - variables: - BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" - PIGLIT_OPTIONS: >- - --timeout 60 - -x .tesc - -x .tese - -x arb_gpu_shader_fp64 - -x arb_gpu_shader_gpu5 - -x arb_gpu_shader_int64 - -x arb_tessellation_shader - -x depthstencil-default_fb - -x egl_ext_platform_device - -x ext_timer_query@time-elapsed - -x gl-1.3-texture-env - -x glsl-1.30 - -x glsl-3.30 - -x glsl-4.00 - -x glsl-4.10 - -x glsl-4.20 - -x glsl-4.30 - -x glsl-4.40 - -x glsl-4.50 - -x glsl-4.60 - -x glsl-es-3.00 - -x glsl-es-3.20 - -x glx-multithread-clearbuffer - -x glx-multithread-shader-compile - -x image_load_store - -x max-texture-size - -x maxsize - -x streaming-texture-leak - -x tex-miplevel-selection - PIGLIT_PLATFORM: gbm - -v3d-rpi4-piglit-quick_gl:armhf: - extends: - - .v3d-rpi4-piglit:armhf - variables: - PIGLIT_PROFILES: quick_gl - PIGLIT_RESULTS: "v3d-rpi4-quick_gl" - -v3d-rpi4-piglit-quick_shader:armhf: - extends: - - .v3d-rpi4-piglit:armhf - variables: - PIGLIT_PROFILES: quick_shader - PIGLIT_RESULTS: "v3d-rpi4-shader_gl" - -v3dv-rpi4-vk:armhf: - extends: - - .baremetal-test-armhf - - .use-armhf_test - - .v3dv-rules - parallel: 6 - variables: - BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" - BM_BOOTFS: /boot/armhf - BM_KERNEL_MODULES: v3d,vc4 - BM_POE_TIMEOUT: 300 - BM_ROOTFS: /lava-files/rootfs-armhf - BM_ROOTFS_EXTRA: /modules/armhf - CPU: arm7hlf - DEQP_EXPECTED_RENDERER: "V3D 4.2" - DEQP_FRACTION: 7 - DEQP_VER: vk - GPU_VERSION: v3dv-rpi4 - VK_CPU: arm7hlf - VK_DRIVER: broadcom - script: - - ./install/bare-metal/poe-powered.sh - needs: - - armhf_test - - meson-armhf - tags: - - igalia-rpi4 - -lavapipe-vk: - stage: software-renderer - extends: - - .test-vk - - .llvmpipe-rules - - .deqp-test-vk - variables: - GPU_VERSION: lvp - VK_DRIVER: lvp - DEQP_FRACTION: 10 - -# RADV CI -.test-radv: - extends: - - .test-vk - - .radv-rules - stage: amd - variables: - VK_DRIVER: radeon - ACO_DEBUG: validateir,validatera - -# Can only be triggered manually on personal branches because RADV is the only -# driver that does Vulkan testing at the moment. -radv_polaris10_vkcts: - extends: - - .deqp-test-vk - - .test-radv - - .test-manual - variables: - GPU_VERSION: radv-polaris10 - tags: - - polaris10 - -radv-fossils: - extends: - - .fossilize-test - - .test-radv - script: - # Pitcairn (GFX6) - - export RADV_FORCE_FAMILY="pitcairn" - - ./install/fossilize-runner.sh - # Bonaire (GFX7) - - export RADV_FORCE_FAMILY="bonaire" - - ./install/fossilize-runner.sh - # Polaris10 (GFX8) - - export RADV_FORCE_FAMILY="polaris10" - - ./install/fossilize-runner.sh - # Vega10 (GFX9) - - export RADV_FORCE_FAMILY="gfx900" - - ./install/fossilize-runner.sh - # Navi10 (GFX10) - - export RADV_FORCE_FAMILY="gfx1010" - - ./install/fossilize-runner.sh - # Sienna Cichlid (GFX10) - - export RADV_FORCE_FAMILY="gfx1030" - - ./install/fossilize-runner.sh diff --git a/src/amd/ci/gitlab-ci.yml b/src/amd/ci/gitlab-ci.yml new file mode 100644 index 00000000000..2eebbcfb4ba --- /dev/null +++ b/src/amd/ci/gitlab-ci.yml @@ -0,0 +1,68 @@ +.test-radv: + extends: + - .test-vk + - .radv-rules + stage: amd + variables: + VK_DRIVER: radeon + ACO_DEBUG: validateir,validatera + +radv-polaris10-traces: + extends: + - .test-radv + - .piglit-traces-test + - .test-manual + variables: + PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-radv.yml" + PIGLIT_REPLAY_DEVICE_NAME: "vk-amd-polaris10" + PIGLIT_RESULTS: "radv-polaris10-replay" + tags: + - polaris10 + +radv-raven-traces: + extends: + - .test-radv + - .piglit-traces-test + - .test-manual + variables: + PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-radv.yml" + PIGLIT_REPLAY_DEVICE_NAME: "vk-amd-raven" + PIGLIT_RESULTS: "radv-raven-replay" + tags: + - raven + +# Can only be triggered manually on personal branches because RADV is the only +# driver that does Vulkan testing at the moment. +radv_polaris10_vkcts: + extends: + - .deqp-test-vk + - .test-radv + - .test-manual + variables: + GPU_VERSION: radv-polaris10 + tags: + - polaris10 + +radv-fossils: + extends: + - .fossilize-test + - .test-radv + script: + # Pitcairn (GFX6) + - export RADV_FORCE_FAMILY="pitcairn" + - ./install/fossilize-runner.sh + # Bonaire (GFX7) + - export RADV_FORCE_FAMILY="bonaire" + - ./install/fossilize-runner.sh + # Polaris10 (GFX8) + - export RADV_FORCE_FAMILY="polaris10" + - ./install/fossilize-runner.sh + # Vega10 (GFX9) + - export RADV_FORCE_FAMILY="gfx900" + - ./install/fossilize-runner.sh + # Navi10 (GFX10) + - export RADV_FORCE_FAMILY="gfx1010" + - ./install/fossilize-runner.sh + # Sienna Cichlid (GFX10) + - export RADV_FORCE_FAMILY="gfx1030" + - ./install/fossilize-runner.sh diff --git a/src/broadcom/ci/gitlab-ci.yml b/src/broadcom/ci/gitlab-ci.yml new file mode 100644 index 00000000000..39cce154fa7 --- /dev/null +++ b/src/broadcom/ci/gitlab-ci.yml @@ -0,0 +1,227 @@ +.vc4-rpi3-test:armhf: + extends: + - .baremetal-test-armhf + - .vc4-rules + - .use-armhf_test + variables: + BM_BOOTFS: /boot/armhf + BM_KERNEL_MODULES: vc4 + BM_ROOTFS: /lava-files/rootfs-armhf + BM_ROOTFS_EXTRA: /modules/armhf + GPU_VERSION: vc4-rpi3 + DEQP_EXPECTED_RENDERER: VC4 + script: + - ./install/bare-metal/poe-powered.sh + needs: + - job: armhf_test + artifacts: false + - meson-armhf + tags: + - igalia-rpi3 + +vc4-rpi3-gles2:armhf: + extends: + - .vc4-rpi3-test:armhf + parallel: 4 + variables: + BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" + DEQP_VER: gles2 + # The vc4s are so slow that it takes about a minute to get through the + # default 500 tests in a group, triggering the serial watchdog. + DEQP_RUNNER_OPTIONS: "--tests-per-group 250" + +.vc4-rpi3-piglit:armhf: + extends: + - .piglit-test + - .vc4-rpi3-test:armhf + - .test-manual + variables: + BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" + BM_POE_TIMEOUT: 180 + PIGLIT_OPTIONS: >- + --timeout 60 + -x .tesc + -x .tese + -x arb_gpu_shader_fp64 + -x arb_gpu_shader_gpu5 + -x arb_gpu_shader_int64 + -x arb_tessellation_shader + -x arb_texture_cube_map + -x clipflat + -x copypixels-sync + -x copyteximage + -x depthstencil-default_fb + -x draw-sync + -x egl_ext_device_ + -x egl_ext_platform_device + -x ext_framebuffer_multisample + -x ext_timer_query@time-elapsed + -x gl-1.0-blend-func + -x gl-1.3-texture-env + -x glsl-1.30 + -x glsl-3.30 + -x glsl-4.00 + -x glsl-4.10 + -x glsl-4.20 + -x glsl-4.30 + -x glsl-4.40 + -x glsl-4.50 + -x glsl-4.60 + -x glsl-es-3.00 + -x glsl-es-3.20 + -x glsl-fs-convolution-2 + -x glsl-vs-loop + -x glsl-vs-loop-nested + -x glsl-vs-mov-after-deref + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x image_load_store + -x longprim + -x masked-clear + -x max-texture-size + -x maxsize + -x ppgtt_memory_alignment + -x streaming-texture-leak + -x texturesize + PIGLIT_PLATFORM: gbm + +vc4-rpi3-piglit-quick_gl:armhf: + extends: + - .vc4-rpi3-piglit:armhf + variables: + FDO_CI_CONCURRENT: 1 + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: "vc4-rpi3-quick_gl" + +vc4-rpi3-piglit-quick_shader:armhf: + extends: + - .vc4-rpi3-piglit:armhf + variables: + FDO_CI_CONCURRENT: 2 + PIGLIT_PROFILES: quick_shader + PIGLIT_RESULTS: "vc4-rpi3-quick_shader" + +.v3d-rpi4-test:armhf: + extends: + - .baremetal-test-armhf + - .v3d-rules + - .use-armhf_test + variables: + BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" + BM_BOOTFS: /boot/armhf + BM_KERNEL_MODULES: v3d,vc4 + BM_POE_TIMEOUT: 300 + BM_ROOTFS: /lava-files/rootfs-armhf + BM_ROOTFS_EXTRA: /modules/armhf + DEQP_EXPECTED_RENDERER: V3D + GPU_VERSION: v3d-rpi4 + script: + - ./install/bare-metal/poe-powered.sh + needs: + - armhf_test + - meson-armhf + tags: + - igalia-rpi4 + +v3d-rpi4-gles31:armhf: + extends: + - .v3d-rpi4-test:armhf + parallel: 2 + variables: + DEQP_FRACTION: 2 + DEQP_VER: gles31 + +v3d-rpi4-gles3:armhf: + extends: + - .v3d-rpi4-test:armhf + parallel: 4 + variables: + DEQP_FRACTION: 2 + DEQP_VER: gles3 + +v3d-rpi4-gles2:armhf: + extends: + - .v3d-rpi4-test:armhf + variables: + DEQP_VER: gles2 + +.v3d-rpi4-piglit:armhf: + extends: + - .piglit-test + - .v3d-rpi4-test:armhf + - .test-manual + variables: + BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" + PIGLIT_OPTIONS: >- + --timeout 60 + -x .tesc + -x .tese + -x arb_gpu_shader_fp64 + -x arb_gpu_shader_gpu5 + -x arb_gpu_shader_int64 + -x arb_tessellation_shader + -x depthstencil-default_fb + -x egl_ext_platform_device + -x ext_timer_query@time-elapsed + -x gl-1.3-texture-env + -x glsl-1.30 + -x glsl-3.30 + -x glsl-4.00 + -x glsl-4.10 + -x glsl-4.20 + -x glsl-4.30 + -x glsl-4.40 + -x glsl-4.50 + -x glsl-4.60 + -x glsl-es-3.00 + -x glsl-es-3.20 + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x image_load_store + -x max-texture-size + -x maxsize + -x streaming-texture-leak + -x tex-miplevel-selection + PIGLIT_PLATFORM: gbm + +v3d-rpi4-piglit-quick_gl:armhf: + extends: + - .v3d-rpi4-piglit:armhf + variables: + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: "v3d-rpi4-quick_gl" + +v3d-rpi4-piglit-quick_shader:armhf: + extends: + - .v3d-rpi4-piglit:armhf + variables: + PIGLIT_PROFILES: quick_shader + PIGLIT_RESULTS: "v3d-rpi4-shader_gl" + +v3dv-rpi4-vk:armhf: + extends: + - .baremetal-test-armhf + - .use-armhf_test + - .v3dv-rules + parallel: 6 + variables: + BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" + BM_BOOTFS: /boot/armhf + BM_KERNEL_MODULES: v3d,vc4 + BM_POE_TIMEOUT: 300 + BM_ROOTFS: /lava-files/rootfs-armhf + BM_ROOTFS_EXTRA: /modules/armhf + CPU: arm7hlf + DEQP_EXPECTED_RENDERER: "V3D 4.2" + DEQP_FRACTION: 7 + DEQP_VER: vk + GPU_VERSION: v3dv-rpi4 + VK_CPU: arm7hlf + VK_DRIVER: broadcom + script: + - ./install/bare-metal/poe-powered.sh + needs: + - armhf_test + - meson-armhf + tags: + - igalia-rpi4 diff --git a/src/freedreno/ci/gitlab-ci.yml b/src/freedreno/ci/gitlab-ci.yml new file mode 100644 index 00000000000..8dcc67fe7a7 --- /dev/null +++ b/src/freedreno/ci/gitlab-ci.yml @@ -0,0 +1,355 @@ +.freedreno-test: + extends: + - .baremetal-test + - .use-arm64_test + - .freedreno-rules + variables: + MINIO_ARTIFACT_NAME: mesa-arm64 + BM_ROOTFS: /lava-files/rootfs-arm64 + FLAKES_CHANNEL: "#freedreno-ci" + PIGLIT_PLATFORM: mixed_glx_egl + script: + - ./install/bare-metal/fastboot.sh + needs: + - arm64_test + - job: meson-arm64 + artifacts: false + tags: + - google-freedreno-db410c + +.baremetal-deqp-test-freedreno-vk: + extends: + - .baremetal-deqp-test + variables: + DEQP_VER: vk + VK_DRIVER: freedreno + +.arm64-a306-test: + extends: + - .freedreno-test + variables: + BM_KERNEL: /lava-files/Image.gz + BM_DTB: /lava-files/apq8016-sbc.dtb + BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8" + GPU_VERSION: freedreno-a307 + DEQP_EXPECTED_RENDERER: FD307 + +a306_gles2: + extends: + - .baremetal-deqp-test + - .arm64-a306-test + variables: + DEQP_VER: gles2 + +a306_gles3: + extends: + - .baremetal-deqp-test + - .arm64-a306-test + parallel: 3 + variables: + DEQP_VER: gles3 + DEQP_FRACTION: 2 + +# Fractional runs with debug options. Note that since we're not +# hitting the iommu faults, we can run in parallel (derive from gles2, not gles3). +a306_gles3_options: + extends: + - .baremetal-deqp-test + - .arm64-a306-test + variables: + DEQP_VER: gles3 + script: + # Check that the non-constbuf UBO case works. + - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh + +.arm64-a530-test: + extends: + - .freedreno-test + variables: + BM_KERNEL: /lava-files/db820c-kernel + BM_DTB: /lava-files/db820c.dtb + # Disable SMP because only CPU 0 is at a freq higher than 19mhz on + # current upstream kernel. + BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp" + FDO_CI_CONCURRENT: 1 + GPU_VERSION: freedreno-a530 + DEQP_EXPECTED_RENDERER: FD530 + tags: + - google-freedreno-db820c + +a530_gles2: + extends: + - .baremetal-deqp-test + - .arm64-a530-test + variables: + DEQP_VER: gles2 + parallel: 2 + +a530_gles3: + extends: + - .baremetal-deqp-test + - .arm64-a530-test + variables: + DEQP_VER: gles3 + DEQP_FRACTION: 40 + +a530_gles31: + extends: + - a530_gles3 + variables: + DEQP_VER: gles31 + DEQP_FRACTION: 10 + +.a530_piglit: + extends: + - .piglit-test + - .arm64-a530-test + - .test-manual + variables: + BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" + BM_START_XORG: 1 + # SMP is disabled in the current kernels for db820c. + FDO_CI_CONCURRENT: 1 + # Excluding for flakes in multisample (MSAA fails covered well by deqp, we + # can enable it once we stabilize that.) and other flakes from + # atomic_counters through userclip in the list. + # + # Also excluding some particularly slow tests (gl-1.3-texture-env) + # + # Check fastboot.sh for more piglit tests being excluded! + PIGLIT_OPTIONS: >- + -x atomic_counters + -x gl-1.0-blend-func + -x glsl-1.30@execution@clipping + -x user-clip + -x arb_texture_multisample + -x ext_framebuffer_multisample + -x egl_ext_device_ + -x egl_ext_platform_device + -x ext_timer_query@time-elapsed + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x max-texture-size + -x maxsize + -x arb_gpu_shader5 + -x arb_gpu_shader_fp64 + -x arb_gpu_shader_int64 + -x arb_tessellation_shader + -x glsl-1.50 + -x glsl-4.00 + -x glsl-4.10 + -x glsl-4.20 + -x glsl-4.30 + -x glsl-4.40 + -x glsl-4.50 + -x glsl-4.60 + -x gl-1.3-texture-env + +# Takes ~25 minutes, so manual-only until we can sort out runtime. +a530_piglit_gl: + extends: + - .a530_piglit + variables: + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: freedreno-a530-gl + +a530_piglit_shader: + extends: + - .a530_piglit + variables: + PIGLIT_PROFILES: quick_shader + PIGLIT_RESULTS: freedreno-a530-shader + +.a630-test: + extends: + - .freedreno-test + variables: + BM_KERNEL: /lava-files/cheza-kernel + BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init" + GPU_VERSION: freedreno-a630 + BM_DTB: /lava-files/db820c.dtb + DEQP_EXPECTED_RENDERER: FD630 + tags: + - google-freedreno-cheza + script: + - ./install/bare-metal/cros-servo.sh + +a630_gles2: + extends: + - .baremetal-deqp-test + - .a630-test + variables: + DEQP_VER: gles2 + +a630_gles31: + extends: + - .baremetal-deqp-test + - .a630-test + variables: + DEQP_VER: gles31 + +a630_gles3: + extends: + - .baremetal-deqp-test + - .a630-test + variables: + DEQP_VER: gles3 + +a630_gl: + extends: + - .baremetal-deqp-test + - .a630-test + variables: + DEQP_VER: gl33 + +a630_gles_others: + extends: + - .baremetal-deqp-test + - .a630-test + variables: + BARE_METAL_TEST_SCRIPT: "/install/bare-metal/arm64_a630_gles_others.sh" + +a630_gles_asan: + extends: + - .baremetal-deqp-test + - .a630-test + - .baremetal-arm64-asan-test + variables: + DEQP_VER: gles31 + DEQP_FRACTION: 10 + GPU_VERSION: freedreno-a630-asan + +a630_vk: + extends: + - .baremetal-deqp-test-freedreno-vk + - .a630-test + parallel: 2 + variables: + DEQP_FRACTION: 4 + # Force binning in the main run, which makes sure we render at + # least 2 bins. This is the path that impacts the most different + # features. However, we end up with flaky results in + # dEQP-VK.binding_model.*.geometry and dEQP-VK.glsl.*_vertex. + TU_DEBUG: forcebin + +# Disabled by default until we can sort out what looks like timeouts before +# getting to the first test (or is it at cleanup after tests completed?). +# Clicking play can show you some useful areas for fixing turnip, though. +a630_vk_asan: + extends: + - .baremetal-deqp-test-freedreno-vk + - .a630-test + - .baremetal-arm64-asan-test + - .test-manual + variables: + DEQP_FRACTION: 100 + DEQP_PARALLEL: 4 # We get OOMkills if we go too wide with asan enabled + TU_DEBUG: forcebin + # Disable the leak checks, since the library gets dlclose()d and thus get + # totally useless leak reports. We can still catch buffer overflows. + ASAN_OPTIONS: "detect_leaks=0" + +# Do a separate sysmem pass over the testcases that really affect sysmem +# rendering. This is currently very flaky, leave it as an option for devs +# to click play on in their branches. +a630_vk_sysmem: + extends: + - .baremetal-deqp-test-freedreno-vk + - .a630-test + variables: + DEQP_FRACTION: 15 + DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*" + GPU_VERSION: freedreno-a630-bypass + TU_DEBUG: sysmem + +.a630_piglit: + extends: + - .piglit-test + - .a630-test + - .test-manual + variables: + BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" + BM_START_XORG: 1 + # Excluding various features we don't support to keep runtime down in + # deciding that they aren't supported. + # + # Also excluding some particularly slow tests (gl-1.3-texture-env takes 100s) + # + # Known flakes in the list are between "arb_blend_func_extended" and + # "varray-disabled" + # + # vs-output-array-vec2-index-wr-before-gs is skipped because it causes + # a flood of GPU hangs and makes the rest of the job flakey + # + # vs-clip-distance/vertex-enables skipped because they seem to be flaky in + # parallel with other tests (reliably fails on its own) + PIGLIT_OPTIONS: >- + -x vs-output-array-vec2-index-wr-before-gs + -x fixed-clip-enables + -x vs-clip-distance-enables + -x vs-clip-vertex-enables + -x arb_blend_func_extended-fbo-extended-blend-pattern_gles2 + -x clear-accum + -x copypixels-sync + -x copyteximage-border + -x copytexsubimage + -x draw-sync + -x getteximage-simple + -x gl30basic + -x tcs-input + -x tes-input + -x unaligned-blit + -x user-clip + -x varray-disabled + -x egl_ext_device_ + -x egl_ext_platform_device + -x ext_timer_query@time-elapsed + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x max-texture-size + -x maxsize + -x arb_gpu_shader_fp64 + -x arb_gpu_shader_gpu5 + -x arb_gpu_shader_int64 + -x glsl-4.00 + -x glsl-4.10 + -x glsl-4.20 + -x glsl-4.30 + -x glsl-4.40 + -x glsl-4.50 + -x glsl-4.60 + -x gl-1.3-texture-env + +# Takes ~20 minutes, so manual-only until we can sort out runtime. +a630_piglit_gl: + extends: + - .a630_piglit + - .test-manual + variables: + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: freedreno-a630-gl + +a630_piglit_shader: + extends: + - .a630_piglit + variables: + PIGLIT_PROFILES: quick_shader + PIGLIT_RESULTS: freedreno-a630-shader + +a630-traces: + extends: + - .piglit-traces-test + - .a630-test + variables: + BARE_METAL_TEST_SCRIPT: "/install/piglit/run.sh" + BM_START_XORG: 1 + PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-freedreno.yml" + PIGLIT_REPLAY_DEVICE_NAME: "freedreno-a630" + PIGLIT_RESULTS: "freedreno-a630-replay" + # This lets us run several more traces which don't use any features we're + # missing. + MESA_GLSL_VERSION_OVERRIDE: "460" + MESA_GL_VERSION_OVERRIDE: "4.6" + artifacts: + reports: + junit: results/junit.xml diff --git a/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml new file mode 100644 index 00000000000..28e0dd066ec --- /dev/null +++ b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml @@ -0,0 +1,99 @@ +.llvmpipe-test: + extends: + - .llvmpipe-rules + variables: + LIBGL_ALWAYS_SOFTWARE: "true" + GALLIUM_DRIVER: "llvmpipe" + +llvmpipe-piglit-cl: + extends: + - .test-cl + - .piglit-test + - .llvmpipe-test + - .llvmpipe-cl-rules + variables: + LP_CL: 1 + LP_NUM_THREADS: 1 + PIGLIT_PROFILES: cl + PIGLIT_RESULTS: "llvmpipe-cl" + PIGLIT_OPTIONS: > + -x bswap -x phatk -x clz-optimizations + script: + - install/piglit/run_cl.sh + +llvmpipe-piglit-quick_gl: + extends: + - .test-gl + - .piglit-test + - .llvmpipe-test + variables: + GALLIVM_PERF: "no_filter_hacks" + LP_NUM_THREADS: 0 + PIGLIT_OPTIONS: > + --process-isolation false + -x egl_ext_device_ + -x egl_ext_platform_device + -x ext_timer_query@time-elapsed + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x max-texture-size + -x maxsize + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: "llvmpipe-quick_gl" + +llvmpipe-piglit-glslparser: + extends: + - .test-gl + - .piglit-test + - .llvmpipe-test + variables: + LP_NUM_THREADS: 0 + PIGLIT_PROFILES: glslparser + PIGLIT_RESULTS: "llvmpipe-glslparser" + +llvmpipe-piglit-quick_shader: + extends: + - .test-gl + - .piglit-test + - .llvmpipe-test + variables: + GALLIVM_PERF: "no_filter_hacks" + LP_NUM_THREADS: 1 + PIGLIT_PROFILES: quick_shader + PIGLIT_RESULTS: "llvmpipe-quick_shader" + +llvmpipe-traces: + extends: + - .test-gl + - .piglit-traces-test + - .llvmpipe-test + variables: + EGL_PLATFORM: "surfaceless" + PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-llvmpipe.yml" + PIGLIT_REPLAY_DEVICE_NAME: "gl-vmware-llvmpipe" + PIGLIT_RESULTS: "llvmpipe-replay" + +llvmpipe-gles2: + variables: + DEQP_VER: gles2 + GALLIVM_PERF: "nopt,no_filter_hacks" + # Don't use threads inside llvmpipe, we've already got all cores + # busy at the deqp-runner level. + LP_NUM_THREADS: 0 + GPU_VERSION: llvmpipe + DEQP_EXPECTED_RENDERER: llvmpipe + extends: + - .test-gl + - .deqp-test + - .llvmpipe-test + +lavapipe-vk: + stage: software-renderer + extends: + - .test-vk + - .llvmpipe-rules + - .deqp-test-vk + variables: + GPU_VERSION: lvp + VK_DRIVER: lvp + DEQP_FRACTION: 10 diff --git a/src/gallium/drivers/softpipe/ci/gitlab-ci.yml b/src/gallium/drivers/softpipe/ci/gitlab-ci.yml new file mode 100644 index 00000000000..4b5fb2eb5c9 --- /dev/null +++ b/src/gallium/drivers/softpipe/ci/gitlab-ci.yml @@ -0,0 +1,80 @@ +softpipe-gles2: + extends: + - llvmpipe-gles2 + - .softpipe-rules + variables: + GPU_VERSION: softpipe + GALLIUM_DRIVER: "softpipe" + DEQP_EXPECTED_RENDERER: softpipe + +softpipe-gles3: + variables: + DEQP_VER: gles3 + extends: softpipe-gles2 + +softpipe-gles31: + parallel: 2 + variables: + DEQP_VER: gles31 + extends: softpipe-gles2 + +softpipe-asan-gles31: + variables: + GPU_VERSION: softpipe-asan + DEQP_FRACTION: 10 + DEQP_VER: gles31 + TEST_LD_PRELOAD: libasan.so.5 + extends: softpipe-gles2 + needs: + - x86_test-gl + - meson-testing-asan + +softpipe-piglit-quick: + extends: + - .test-gl + - .piglit-test + - .softpipe-rules + variables: + GALLIUM_DRIVER: softpipe + # rasterpos skipped until we uprev piglit (commit ff2a7650be7349) + # triangle-rasterization skipped due to flakes thanks to it using a time-based random seed. + # glx-multithread-texture is flaky, undiagnosed + PIGLIT_OPTIONS: > + -x rasterpos + -x triangle-rasterization + -x glx-multithread-texture + -x egl_ext_device_ + -x egl_ext_platform_device + -x ext_timer_query@time-elapsed + -x glx-multithread-clearbuffer + -x glx-multithread-shader-compile + -x max-texture-size + -x maxsize + -x fs-execution-ordering + -x local-id-explosion + -x arb_pipeline_statistics_query-comp + -x streaming-texture-leak + -x longprim + -x shader-mem-barrier + -x arb_gpu_shader_fp64 + -x arb_gpu_shader_int64 + -x arb_tessellation_shader + -x glsl-4.00 + -x glsl-4.10 + -x glsl-4.20 + -x glsl-4.30 + -x glsl-4.40 + -x glsl-4.50 + -x gpu_shader4 + -x gpu_shader5 + PIGLIT_PROFILES: quick_gl quick_shader + PIGLIT_RESULTS: softpipe-quick + +# Note that KHR-GL3* test sets include all tests from the previous +# version, so we only need to run one test list (unlike dEQP-GLES, +# where the test sets are separate). +softpipe-gl: + variables: + DEQP_VER: gl33 + extends: + - softpipe-gles2 diff --git a/src/gallium/drivers/virgl/ci/gitlab-ci.yml b/src/gallium/drivers/virgl/ci/gitlab-ci.yml new file mode 100644 index 00000000000..79a2d3f14ff --- /dev/null +++ b/src/gallium/drivers/virgl/ci/gitlab-ci.yml @@ -0,0 +1,86 @@ +.virgl-test: + extends: + - .test-gl + - .virgl-rules + variables: + LIBGL_ALWAYS_SOFTWARE: "true" + GALLIUM_DRIVER: "virpipe" + +virgl-gles2-on-gl: + variables: + DEQP_VER: gles2 + DEQP_NO_SAVE_RESULTS: 1 + GPU_VERSION: virgl-gl + # Don't use threads inside llvmpipe, we've already got all cores + # busy at the deqp-runner level. + LP_NUM_THREADS: 0 + DEQP_OPTIONS: "--deqp-log-images=disable" + DEQP_EXPECTED_RENDERER: virgl + extends: + - .deqp-test + - .virgl-test + +virgl-gles3-on-gl: + variables: + DEQP_VER: gles3 + DEQP_RUNNER_OPTIONS: "--timeout 180" + extends: virgl-gles2-on-gl + +virgl-gles31-on-gl: + parallel: 2 + variables: + DEQP_VER: gles31 + MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader" + extends: virgl-gles3-on-gl + +virgl-gl30-on-gl: + variables: + DEQP_VER: gl30 + extends: virgl-gles2-on-gl + +virgl-gl31-on-gl: + variables: + DEQP_VER: gl31 + extends: virgl-gles2-on-gl + +virgl-gl32-on-gl: + variables: + DEQP_VER: gl32 + extends: virgl-gles2-on-gl + +virgl-gles2-on-gles: + variables: + VIRGL_HOST_API: GLES + GPU_VERSION: virgl-gles + extends: + - virgl-gles2-on-gl + - .test-manual + +virgl-gles3-on-gles: + variables: + VIRGL_HOST_API: GLES + GPU_VERSION: virgl-gles + extends: + - virgl-gles3-on-gl + - .test-manual + +virgl-gles31-on-gles: + variables: + VIRGL_HOST_API: GLES + GPU_VERSION: virgl-gles + extends: + - virgl-gles31-on-gl + - .test-manual + +virgl-traces: + extends: + - .virgl-test + - .piglit-traces-test + variables: + EGL_PLATFORM: "surfaceless" + PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-virgl.yml" + PIGLIT_REPLAY_DEVICE_NAME: "gl-virgl" + PIGLIT_RESULTS: "virgl-replay" + MESA_GLES_VERSION_OVERRIDE: "3.1" + MESA_GLSL_VERSION_OVERRIDE: "310" + diff --git a/src/gallium/drivers/zink/ci/gitlab-ci.yml b/src/gallium/drivers/zink/ci/gitlab-ci.yml new file mode 100644 index 00000000000..a44ba59befd --- /dev/null +++ b/src/gallium/drivers/zink/ci/gitlab-ci.yml @@ -0,0 +1,20 @@ +.zink-test: + extends: + - .zink-rules + variables: + MESA_LOADER_DRIVER_OVERRIDE: "zink" + ZINK_USE_LAVAPIPE: "true" + +zink-piglit-quick_gl: + extends: + - .test-gl + - .piglit-test + - .zink-test + variables: + LP_NUM_THREADS: 0 + PIGLIT_OPTIONS: > + -x arb_map_buffer_alignment@arb_map_buffer_alignment-map-invalidate-range + -x glx-make-current + PIGLIT_PROFILES: quick_gl + PIGLIT_RESULTS: "zink-quick_gl" + GALLIVM_PERF: "no_filter_hacks"