From 9442571664e5a7d6e06f098ce4ea2246e5504796 Mon Sep 17 00:00:00 2001 From: Helen Koike Date: Thu, 14 Sep 2023 20:32:07 -0300 Subject: [PATCH] ci: separate hiden jobs to -inc.yml files make it easier to re-use the hidden jobs by other project (e.g. linux) without enabling the executable jobs. Signed-off-by: Helen Koike Part-of: --- src/amd/ci/gitlab-ci-inc.yml | 326 +++++++++++++++++ src/amd/ci/gitlab-ci.yml | 324 +---------------- src/freedreno/ci/gitlab-ci-inc.yml | 319 ++++++++++++++++ src/freedreno/ci/gitlab-ci.yml | 321 +---------------- .../drivers/crocus/ci/gitlab-ci-inc.yml | 37 ++ src/gallium/drivers/crocus/ci/gitlab-ci.yml | 39 +- .../drivers/llvmpipe/ci/gitlab-ci-inc.yml | 67 ++++ src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml | 69 +--- .../drivers/nouveau/ci/gitlab-ci-inc.yml | 82 +++++ src/gallium/drivers/nouveau/ci/gitlab-ci.yml | 84 +---- .../drivers/softpipe/ci/gitlab-ci-inc.yml | 25 ++ src/gallium/drivers/softpipe/ci/gitlab-ci.yml | 28 +- .../drivers/virgl/ci/gitlab-ci-inc.yml | 79 ++++ src/gallium/drivers/virgl/ci/gitlab-ci.yml | 82 +---- src/gallium/drivers/zink/ci/gitlab-ci-inc.yml | 125 +++++++ src/gallium/drivers/zink/ci/gitlab-ci.yml | 128 +------ .../frontends/lavapipe/ci/gitlab-ci-inc.yml | 30 ++ .../frontends/lavapipe/ci/gitlab-ci.yml | 33 +- src/intel/ci/gitlab-ci-inc.yml | 338 +++++++++++++++++ src/intel/ci/gitlab-ci.yml | 340 +----------------- src/microsoft/ci/gitlab-ci-inc.yml | 68 ++++ src/microsoft/ci/gitlab-ci.yml | 71 +--- 22 files changed, 1518 insertions(+), 1497 deletions(-) create mode 100644 src/amd/ci/gitlab-ci-inc.yml create mode 100644 src/freedreno/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/crocus/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/llvmpipe/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/nouveau/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/softpipe/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/virgl/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/drivers/zink/ci/gitlab-ci-inc.yml create mode 100644 src/gallium/frontends/lavapipe/ci/gitlab-ci-inc.yml create mode 100644 src/intel/ci/gitlab-ci-inc.yml create mode 100644 src/microsoft/ci/gitlab-ci-inc.yml diff --git a/src/amd/ci/gitlab-ci-inc.yml b/src/amd/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..01d8c4f7f17 --- /dev/null +++ b/src/amd/ci/gitlab-ci-inc.yml @@ -0,0 +1,326 @@ +.radeonsi-rules: + stage: amd + rules: + - !reference [.collabora-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: &radeonsi_file_list + - src/gallium/drivers/radeonsi/**/* + - src/gallium/include/winsys/**/* + - src/gallium/winsys/amdgpu/**/* + - src/amd/* + - src/amd/addrlib/**/* + - src/amd/ci/* + - src/amd/common/**/* + - src/amd/llvm/**/* + - src/amd/registers/**/* + when: on_success + +.radv-rules: + stage: amd + rules: + - !reference [.vulkan-rules, rules] + - changes: &radv_file_list + - src/amd/**/* + - src/vulkan/**/* + when: on_success + +.radv-collabora-rules: + stage: amd + rules: + - !reference [.collabora-farm-rules, rules] + - !reference [.radv-rules, rules] + +.radv-valve-rules: + stage: amd + rules: + - !reference [.valve-farm-rules, rules] + - !reference [.radv-rules, rules] + +.radv-valve-manual-rules: + stage: amd + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.valve-farm-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + *radv_file_list + when: manual + +.radeonsi+radv-rules: + stage: amd + rules: + - !reference [.radeonsi-rules, rules] + - !reference [.radv-rules, rules] + +.radeonsi-vaapi-rules: + stage: amd + rules: + - !reference [.collabora-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: + *radeonsi_file_list + when: on_success + - changes: &radeon_vcn_file_list + - src/gallium/frontends/va/**/* + - src/gallium/targets/va/**/* + when: on_success + +.radeonsi-vaapi-manual-rules: + stage: amd + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *radeon_vcn_file_list + when: manual + +.radeonsi-valve-rules: + stage: amd + rules: + - !reference [.valve-farm-rules, rules] + - !reference [.radeonsi-rules, rules] + +.radeonsi-valve-manual-rules: + stage: amd + rules: + - !reference [.valve-farm-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + *radeonsi_file_list + when: manual + + +############### LAVA +# job prefixes: radeonsi (OpenGL), radv (Vulkan), amd (radeonsi+radv) +.stoney-test:x86_64: + variables: + BOOT_METHOD: depthcharge + DEQP_EXPECTED_RENDERER: STONEY + DTB: "" + FDO_CI_CONCURRENT: 3 + HWCI_FREQ_MAX: "true" + HWCI_KERNEL_MODULES: amdgpu + KERNEL_IMAGE_TYPE: "" + FLAKES_CHANNEL: "#amd-ci" + +.radeonsi-stoney-test:x86_64: + extends: + - .stoney-test:x86_64 + - .radeonsi-rules + variables: + GPU_VERSION: radeonsi-stoney + DRIVER_NAME: radeonsi + # 12 devices (2023-01-10) + RUNNER_TAG: mesa-ci-x86-64-lava-acer-R721T-grunt + DEVICE_TYPE: acer-R721T-grunt + PIGLIT_PLATFORM: mixed_glx_egl + +.radv-stoney-test:x86_64: + extends: + - .stoney-test:x86_64 + - .radv-collabora-rules + variables: + DEQP_VER: vk + DRIVER_NAME: radv + GPU_VERSION: radv-stoney-aco + VK_DRIVER: radeon + # 6 devices (2022-11-30) + DEVICE_TYPE: hp-14-db0003na-grunt + RUNNER_TAG: mesa-ci-x86-64-lava-hp-14-db0003na-grunt + +# 10 devices (2023-01-17) +.lava-asus-CM1400CXA-dalboz:x86_64: + variables: + BOOT_METHOD: depthcharge + DEVICE_TYPE: asus-CM1400CXA-dalboz + DTB: "" + HWCI_FREQ_MAX: "true" + HWCI_KERNEL_MODULES: amdgpu + KERNEL_IMAGE_TYPE: "" + RUNNER_TAG: mesa-ci-x86-64-lava-asus-CM1400CXA-dalboz + +# 5 devices (2023-05-03) +.lava-lenovo-TPad-C13-Yoga-zork:x86_64: + variables: + BOOT_METHOD: depthcharge + DEVICE_TYPE: lenovo-TPad-C13-Yoga-zork + DTB: "" + HWCI_FREQ_MAX: "true" + HWCI_KERNEL_MODULES: amdgpu + KERNEL_IMAGE_TYPE: "" + RUNNER_TAG: mesa-ci-x86-64-lava-lenovo-TPad-C13-Yoga-zork + +.radeonsi-raven-test:x86_64: + extends: + - .radeonsi-rules + variables: + GPU_VERSION: radeonsi-raven + DRIVER_NAME: radeonsi + +.radv-raven-test:x86_64: + extends: + - .radv-collabora-rules + variables: + DRIVER_NAME: radv + GPU_VERSION: radv-raven + VK_DRIVER: radeon + +.amd-raven-test:x86_64: + extends: + - .radeonsi+radv-rules + variables: + DRIVER_NAME: radeonsi + GPU_VERSION: amd-raven + VK_DRIVER: radeon + +.radv-traces: + extends: + - .lava-piglit-traces:x86_64 + variables: + PIGLIT_PLATFORM: mixed_glx_egl # TODO, take wine/VK in account + PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-amd.yml" + PIGLIT_REPLAY_EXTRA_ARGS: --keep-image + +############### Valve Infra +.test-radv: + variables: + VK_DRIVER: radeon + DRIVER_NAME: radv + # The SPIRV -> NIR code generator generates so many harmless + # warnings on the shaders in VK-CTS that jobs fail due to the log + # size getting too big. Since it's not feasible right now + # to fix these shaders in the CTS, instead, ignore warnings from + # the code generator. + ACO_DEBUG: validateir,validatera + MESA_VK_IGNORE_CONFORMANCE_WARNING: 1 + B2C_JOB_VOLUME_EXCLUSIONS: "*.shader_cache,install/*,*/install/*,*/vkd3d-proton.cache*,vkd3d-proton.cache*,*.qpa" + # Enable ETC2 emulation on non-native platforms (RENOIR,RDNA+, GFX6-8 dGPUs) + radv_require_etc2: 'true' + +.b2c-test-radv-vk: + extends: + - .radv-valve-rules + - .test-radv + - .b2c-test-vk + +.deqp-test-valve: + variables: + B2C_JOB_SUCCESS_REGEX: '^\+ DEQP_EXITCODE=0\r$' + HWCI_TEST_SCRIPT: ./install/deqp-runner.sh + +.kabini-test-valve: + variables: + RUNNER_FARM_LOCATION: mupuf + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=8g' + tags: + - amdgpu:codename:KABINI + +.polaris10-test-valve: + variables: + FDO_CI_CONCURRENT: 16 + B2C_TIMEOUT_BOOT_RETRIES: 4 + # (2022-01) tsc=unstable was added in response to this message in kmsg, + # TSC found unstable after boot, most likely due to broken BIOS. Use 'tsc=unstable'. + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g tsc=unstable' + tags: + - amdgpu:codename:POLARIS10 + +.polaris10-test-valve-mupuf: + extends: .polaris10-test-valve + variables: + RUNNER_FARM_LOCATION: mupuf + +.polaris10-test-valve-kws: + extends: .polaris10-test-valve + variables: + RUNNER_FARM_LOCATION: keywords + +.vega10-test-valve: + variables: + RUNNER_FARM_LOCATION: keywords + FDO_CI_CONCURRENT: 16 + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' + tags: + - amdgpu:codename:VEGA10 + +.renoir-test-valve: + variables: + RUNNER_FARM_LOCATION: mupuf + FDO_CI_CONCURRENT: 24 + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' + B2C_TIMEOUT_BOOT_MINUTES: 60 + B2C_TIMEOUT_OVERALL_MINUTES: 120 + tags: + - amdgpu:codename:RENOIR + +.navi10-test-valve: + variables: + # (2022-01) noapic is set because the serial adapter on this + # machine is using non-MSI IRQs and is generating a lot of + # IRQs. This tends to confuse the interrupt controller and breaks + # MSI IRQs leading to GPU hangs on amdgpu. + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g noapic' + tags: + - amdgpu:codename:NAVI10 + +.navi10-test-valve-mupuf: + extends: + - .navi10-test-valve + variables: + RUNNER_FARM_LOCATION: mupuf + FDO_CI_CONCURRENT: 24 + +.navi10-test-valve-kws: + extends: + - .navi10-test-valve + variables: + RUNNER_FARM_LOCATION: keywords + FDO_CI_CONCURRENT: 16 + +.navi21-test-valve: + variables: + RUNNER_FARM_LOCATION: keywords + FDO_CI_CONCURRENT: 32 + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' + tags: + - amdgpu:codename:NAVI21 + +.vangogh-test-valve: + variables: + RUNNER_FARM_LOCATION: mupuf + FDO_CI_CONCURRENT: 8 + B2C_TIMEOUT_BOOT_MINUTES: 85 + B2C_TIMEOUT_OVERALL_MINUTES: 120 + B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' + tags: + - amdgpu:codename:VANGOGH + - $VALVE_INFRA_VANGOGH_JOB_PRIORITY + +############### VKCTS tests ############### + +# A note on the variables to control fractional VKCTS runs +# parallel: N means to split the test list into chunks of 1/N lines, and +# DEQP_FRACTION: M means to run every Mth test from the resulting lines. +# So parallel: 2 and DEQP_FRACTION: 5 would imply running 1/10th of the suite. +.vkcts-test-valve: + extends: + - .b2c-test-radv-vk + - .deqp-test-valve + variables: + DEQP_VER: vk + +############### vkd3d-proton +.vkd3d-test-valve: + extends: + - .b2c-test-radv-vk + variables: + B2C_JOB_SUCCESS_REGEX: 'vkd3d-proton execution: SUCCESS\r$' + HWCI_TEST_SCRIPT: ./install/vkd3d-proton/run.sh + +.vkd3d-kabini-valve: + extends: + - .vkd3d-test-valve + - .kabini-test-valve + - .radv-valve-manual-rules + variables: + VKD3D_PROTON_RESULTS: radv-kabini-vkd3d diff --git a/src/amd/ci/gitlab-ci.yml b/src/amd/ci/gitlab-ci.yml index 6c487813b2f..2760b08f862 100644 --- a/src/amd/ci/gitlab-ci.yml +++ b/src/amd/ci/gitlab-ci.yml @@ -1,132 +1,5 @@ -.radeonsi-rules: - stage: amd - rules: - - !reference [.collabora-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: &radeonsi_file_list - - src/gallium/drivers/radeonsi/**/* - - src/gallium/include/winsys/**/* - - src/gallium/winsys/amdgpu/**/* - - src/amd/* - - src/amd/addrlib/**/* - - src/amd/ci/* - - src/amd/common/**/* - - src/amd/llvm/**/* - - src/amd/registers/**/* - when: on_success - -.radv-rules: - stage: amd - rules: - - !reference [.vulkan-rules, rules] - - changes: &radv_file_list - - src/amd/**/* - - src/vulkan/**/* - when: on_success - -.radv-collabora-rules: - stage: amd - rules: - - !reference [.collabora-farm-rules, rules] - - !reference [.radv-rules, rules] - -.radv-valve-rules: - stage: amd - rules: - - !reference [.valve-farm-rules, rules] - - !reference [.radv-rules, rules] - -.radv-valve-manual-rules: - stage: amd - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.valve-farm-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - *radv_file_list - when: manual - -.radeonsi+radv-rules: - stage: amd - rules: - - !reference [.radeonsi-rules, rules] - - !reference [.radv-rules, rules] - -.radeonsi-vaapi-rules: - stage: amd - rules: - - !reference [.collabora-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: - *radeonsi_file_list - when: on_success - - changes: &radeon_vcn_file_list - - src/gallium/frontends/va/**/* - - src/gallium/targets/va/**/* - when: on_success - -.radeonsi-vaapi-manual-rules: - stage: amd - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *radeon_vcn_file_list - when: manual - -.radeonsi-valve-rules: - stage: amd - rules: - - !reference [.valve-farm-rules, rules] - - !reference [.radeonsi-rules, rules] - -.radeonsi-valve-manual-rules: - stage: amd - rules: - - !reference [.valve-farm-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - *radeonsi_file_list - when: manual - - -############### LAVA -# job prefixes: radeonsi (OpenGL), radv (Vulkan), amd (radeonsi+radv) -.stoney-test:x86_64: - variables: - BOOT_METHOD: depthcharge - DEQP_EXPECTED_RENDERER: STONEY - DTB: "" - FDO_CI_CONCURRENT: 3 - HWCI_FREQ_MAX: "true" - HWCI_KERNEL_MODULES: amdgpu - KERNEL_IMAGE_TYPE: "" - FLAKES_CHANNEL: "#amd-ci" - -.radeonsi-stoney-test:x86_64: - extends: - - .stoney-test:x86_64 - - .radeonsi-rules - variables: - GPU_VERSION: radeonsi-stoney - DRIVER_NAME: radeonsi - # 12 devices (2023-01-10) - RUNNER_TAG: mesa-ci-x86-64-lava-acer-R721T-grunt - DEVICE_TYPE: acer-R721T-grunt - PIGLIT_PLATFORM: mixed_glx_egl - -.radv-stoney-test:x86_64: - extends: - - .stoney-test:x86_64 - - .radv-collabora-rules - variables: - DEQP_VER: vk - DRIVER_NAME: radv - GPU_VERSION: radv-stoney-aco - VK_DRIVER: radeon - # 6 devices (2022-11-30) - DEVICE_TYPE: hp-14-db0003na-grunt - RUNNER_TAG: mesa-ci-x86-64-lava-hp-14-db0003na-grunt +include: + - local: 'src/amd/ci/gitlab-ci-inc.yml' # Run five jobs in parallel each running 1/55th of the test suite radv-stoney-vkcts:x86_64: @@ -175,51 +48,6 @@ radeonsi-stoney-traces:x86_64: PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-amd.yml" PIGLIT_REPLAY_EXTRA_ARGS: --keep-image -# 10 devices (2023-01-17) -.lava-asus-CM1400CXA-dalboz:x86_64: - variables: - BOOT_METHOD: depthcharge - DEVICE_TYPE: asus-CM1400CXA-dalboz - DTB: "" - HWCI_FREQ_MAX: "true" - HWCI_KERNEL_MODULES: amdgpu - KERNEL_IMAGE_TYPE: "" - RUNNER_TAG: mesa-ci-x86-64-lava-asus-CM1400CXA-dalboz - -# 5 devices (2023-05-03) -.lava-lenovo-TPad-C13-Yoga-zork:x86_64: - variables: - BOOT_METHOD: depthcharge - DEVICE_TYPE: lenovo-TPad-C13-Yoga-zork - DTB: "" - HWCI_FREQ_MAX: "true" - HWCI_KERNEL_MODULES: amdgpu - KERNEL_IMAGE_TYPE: "" - RUNNER_TAG: mesa-ci-x86-64-lava-lenovo-TPad-C13-Yoga-zork - -.radeonsi-raven-test:x86_64: - extends: - - .radeonsi-rules - variables: - GPU_VERSION: radeonsi-raven - DRIVER_NAME: radeonsi - -.radv-raven-test:x86_64: - extends: - - .radv-collabora-rules - variables: - DRIVER_NAME: radv - GPU_VERSION: radv-raven - VK_DRIVER: radeon - -.amd-raven-test:x86_64: - extends: - - .radeonsi+radv-rules - variables: - DRIVER_NAME: radeonsi - GPU_VERSION: amd-raven - VK_DRIVER: radeon - radv-raven-vkcts:x86_64: extends: - .lava-test-deqp:x86_64 @@ -239,14 +67,6 @@ amd-raven-skqp:x86_64: HWCI_START_WESTON: 1 DEQP_SUITE: amd-raven-skqp -.radv-traces: - extends: - - .lava-piglit-traces:x86_64 - variables: - PIGLIT_PLATFORM: mixed_glx_egl # TODO, take wine/VK in account - PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-amd.yml" - PIGLIT_REPLAY_EXTRA_ARGS: --keep-image - radv-raven-traces:x86_64: extends: - .radv-traces @@ -302,134 +122,8 @@ radeonsi-raven-va-full:x86_64: JOB_TIMEOUT: 60 GTEST_FRACTION: null -############### Valve Infra -.test-radv: - variables: - VK_DRIVER: radeon - DRIVER_NAME: radv - # The SPIRV -> NIR code generator generates so many harmless - # warnings on the shaders in VK-CTS that jobs fail due to the log - # size getting too big. Since it's not feasible right now - # to fix these shaders in the CTS, instead, ignore warnings from - # the code generator. - ACO_DEBUG: validateir,validatera - MESA_VK_IGNORE_CONFORMANCE_WARNING: 1 - B2C_JOB_VOLUME_EXCLUSIONS: "*.shader_cache,install/*,*/install/*,*/vkd3d-proton.cache*,vkd3d-proton.cache*,*.qpa" - # Enable ETC2 emulation on non-native platforms (RENOIR,RDNA+, GFX6-8 dGPUs) - radv_require_etc2: 'true' - -.b2c-test-radv-vk: - extends: - - .radv-valve-rules - - .test-radv - - .b2c-test-vk - -.deqp-test-valve: - variables: - B2C_JOB_SUCCESS_REGEX: '^\+ DEQP_EXITCODE=0\r$' - HWCI_TEST_SCRIPT: ./install/deqp-runner.sh - -.kabini-test-valve: - variables: - RUNNER_FARM_LOCATION: mupuf - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=8g' - tags: - - amdgpu:codename:KABINI - -.polaris10-test-valve: - variables: - FDO_CI_CONCURRENT: 16 - B2C_TIMEOUT_BOOT_RETRIES: 4 - # (2022-01) tsc=unstable was added in response to this message in kmsg, - # TSC found unstable after boot, most likely due to broken BIOS. Use 'tsc=unstable'. - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g tsc=unstable' - tags: - - amdgpu:codename:POLARIS10 - -.polaris10-test-valve-mupuf: - extends: .polaris10-test-valve - variables: - RUNNER_FARM_LOCATION: mupuf - -.polaris10-test-valve-kws: - extends: .polaris10-test-valve - variables: - RUNNER_FARM_LOCATION: keywords - -.vega10-test-valve: - variables: - RUNNER_FARM_LOCATION: keywords - FDO_CI_CONCURRENT: 16 - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' - tags: - - amdgpu:codename:VEGA10 - -.renoir-test-valve: - variables: - RUNNER_FARM_LOCATION: mupuf - FDO_CI_CONCURRENT: 24 - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' - B2C_TIMEOUT_BOOT_MINUTES: 60 - B2C_TIMEOUT_OVERALL_MINUTES: 120 - tags: - - amdgpu:codename:RENOIR - -.navi10-test-valve: - variables: - # (2022-01) noapic is set because the serial adapter on this - # machine is using non-MSI IRQs and is generating a lot of - # IRQs. This tends to confuse the interrupt controller and breaks - # MSI IRQs leading to GPU hangs on amdgpu. - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g noapic' - tags: - - amdgpu:codename:NAVI10 - -.navi10-test-valve-mupuf: - extends: - - .navi10-test-valve - variables: - RUNNER_FARM_LOCATION: mupuf - FDO_CI_CONCURRENT: 24 - -.navi10-test-valve-kws: - extends: - - .navi10-test-valve - variables: - RUNNER_FARM_LOCATION: keywords - FDO_CI_CONCURRENT: 16 - -.navi21-test-valve: - variables: - RUNNER_FARM_LOCATION: keywords - FDO_CI_CONCURRENT: 32 - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' - tags: - - amdgpu:codename:NAVI21 - -.vangogh-test-valve: - variables: - RUNNER_FARM_LOCATION: mupuf - FDO_CI_CONCURRENT: 8 - B2C_TIMEOUT_BOOT_MINUTES: 85 - B2C_TIMEOUT_OVERALL_MINUTES: 120 - B2C_KERNEL_CMDLINE_EXTRAS: 'b2c.swap=16g' - tags: - - amdgpu:codename:VANGOGH - - $VALVE_INFRA_VANGOGH_JOB_PRIORITY - ############### VKCTS tests ############### -# A note on the variables to control fractional VKCTS runs -# parallel: N means to split the test list into chunks of 1/N lines, and -# DEQP_FRACTION: M means to run every Mth test from the resulting lines. -# So parallel: 2 and DEQP_FRACTION: 5 would imply running 1/10th of the suite. -.vkcts-test-valve: - extends: - - .b2c-test-radv-vk - - .deqp-test-valve - variables: - DEQP_VER: vk - # VKCTS never finishes on gfx7 due to all the GPU resets and hangs. # Hence, disable it for now. .vkcts-kabini-valve: @@ -577,20 +271,6 @@ radv-fossils: ./install/fossilize-runner.sh ############### vkd3d-proton -.vkd3d-test-valve: - extends: - - .b2c-test-radv-vk - variables: - B2C_JOB_SUCCESS_REGEX: 'vkd3d-proton execution: SUCCESS\r$' - HWCI_TEST_SCRIPT: ./install/vkd3d-proton/run.sh - -.vkd3d-kabini-valve: - extends: - - .vkd3d-test-valve - - .kabini-test-valve - - .radv-valve-manual-rules - variables: - VKD3D_PROTON_RESULTS: radv-kabini-vkd3d vkd3d-polaris10-valve: extends: diff --git a/src/freedreno/ci/gitlab-ci-inc.yml b/src/freedreno/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..c0a982b7718 --- /dev/null +++ b/src/freedreno/ci/gitlab-ci-inc.yml @@ -0,0 +1,319 @@ +# Rules for changes that impact either freedreno or turnip. +.freedreno-common-rules: + rules: + - !reference [.no_scheduled_pipelines-rules, rules] + - changes: &freedreno_core_file_list + - src/freedreno/ci/**/* + - src/freedreno/common/**/* + - src/freedreno/drm/**/* + - src/freedreno/fdl/**/* + - src/freedreno/ir3/**/* + - src/freedreno/isa/**/* + - src/freedreno/registers/**/* + when: on_success + +.freedreno-common-manual-rules: + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.core-manual-rules, rules] + - changes: + *freedreno_core_file_list + when: manual + + +# Two different farms (Google Freedreno and Collabora farm) +.google-freedreno-rules: + stage: freedreno + rules: + - !reference [.freedreno-farm-rules, rules] + - !reference [.freedreno-common-rules, rules] + - !reference [.gl-rules, rules] + - changes: &freedreno_gl_file_list + - src/freedreno/ir2/**/* + - src/gallium/drivers/freedreno/**/* + - src/gallium/winsys/freedreno/**/* + when: on_success + +.collabora-freedreno-rules: + stage: freedreno + rules: + - !reference [.collabora-farm-rules, rules] + - !reference [.freedreno-common-rules, rules] + - !reference [.gl-rules, rules] + - changes: + *freedreno_gl_file_list + when: on_success + +.google-freedreno-manual-rules: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.freedreno-farm-manual-rules, rules] + - !reference [.freedreno-common-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *freedreno_gl_file_list + when: manual + +.collabora-freedreno-manual-rules: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.freedreno-common-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *freedreno_gl_file_list + when: manual + + +.google-turnip-rules: + stage: freedreno + rules: + - !reference [.freedreno-farm-rules, rules] + - !reference [.freedreno-common-rules, rules] + - !reference [.vulkan-rules, rules] + - changes: &freedreno_vulkan_file_list + - src/freedreno/vulkan/**/* + when: on_success + +.collabora-turnip-rules: + stage: freedreno + rules: + - !reference [.freedreno-farm-manual-rules, rules] + - !reference [.freedreno-common-rules, rules] + - !reference [.vulkan-rules, rules] + - changes: *freedreno_vulkan_file_list + when: on_success + +.google-turnip-manual-rules: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.freedreno-farm-manual-rules, rules] + - !reference [.freedreno-common-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + *freedreno_vulkan_file_list + when: manual + +.collabora-turnip-manual-rules: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.freedreno-common-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + *freedreno_vulkan_file_list + when: manual + +# For piglit and skqp test jobs that run both GL and VK tests. +.google-freedreno-turnip-rules: + rules: + - !reference [.google-freedreno-rules, rules] + - !reference [.google-turnip-rules, rules] + +.collabora-freedreno-turnip-rules: + rules: + - !reference [.collabora-freedreno-rules, rules] + - !reference [.collabora-turnip-rules, rules] + +.google-freedreno-rules-restricted: + stage: freedreno + rules: + - !reference [.restricted-rules, rules] + - !reference [.google-freedreno-rules, rules] + +.collabora-freedreno-rules-restricted: + stage: freedreno + rules: + - !reference [.restricted-rules, rules] + - !reference [.collabora-freedreno-rules, rules] + +.google-freedreno-rules-performance: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.performance-rules, rules] + - !reference [.google-freedreno-manual-rules, rules] + allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. + variables: + # Ensure that we are using the release build artifact + S3_ARTIFACT_NAME: mesa-arm64-default-release + needs: + - debian/arm64_test + - debian-arm64-release + dependencies: null + +.collabora-freedreno-rules-performance: + stage: freedreno + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.performance-rules, rules] + - !reference [.collabora-freedreno-manual-rules, rules] + allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. + variables: + JOB_PRIORITY: 40 + # Ensure that we are using the release build artifact + S3_ARTIFACT_NAME: mesa-arm64-default-release + needs: + - debian/x86_64_build + - debian-arm64-release + dependencies: null + + +.google-freedreno-test: + extends: + - .baremetal-test-arm64 + - .google-freedreno-rules + variables: + VK_DRIVER: freedreno + FLAKES_CHANNEL: "#freedreno-ci" + PIGLIT_PLATFORM: mixed_glx_egl + BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 $BM_KERNEL_EXTRA_ARGS root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init $BM_KERNELARGS" + script: + - ./install/bare-metal/fastboot.sh + +.baremetal-deqp-test-freedreno-vk: + extends: + - .baremetal-deqp-test + variables: + DEQP_VER: vk + # Increase the hangcheck timer for our spilling tests which bump up against + # the .5s default. + FREEDRENO_HANGCHECK_MS: 2000 + +.google-freedreno-test-traces: + extends: + - .piglit-traces-test + variables: + HWCI_TEST_SCRIPT: "/install/piglit/piglit-traces.sh" + HWCI_START_XORG: 1 + PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-freedreno.yml" + artifacts: + reports: + junit: results/junit.xml + +.a306-test: + extends: + - .google-freedreno-test + variables: + BM_KERNEL: Image.gz + BM_DTB: apq8016-sbc + GPU_VERSION: freedreno-a307 + tags: + - google-freedreno-db410c + +# New jobs. Leave it as manual for now. +.a306_piglit: + extends: + - .piglit-test + - .a306-test + - .google-freedreno-manual-rules + variables: + HWCI_START_XORG: 1 + +# Something happened and now this hangchecks and doesn't recover. Unkown when +# it started. +.a306_piglit_gl: + extends: + - .a306_piglit + variables: + PIGLIT_PROFILES: quick_gl + BM_KERNEL_EXTRA_ARGS: "msm.num_hw_submissions=1" + FDO_CI_CONCURRENT: 3 + +# 8 devices (2023-04-15) +.a530-test: + extends: + - .google-freedreno-test + variables: + BM_KERNEL: Image.gz + BM_DTB: apq8096-db820c + GPU_VERSION: freedreno-a530 + tags: + - google-freedreno-db820c + +# piglit and piglit_gl since it takes a bit under 20 minutes and has a lot of flakes, so +# leave it as manual. The shader_tests are in the main a530_gl suite. +# +# Disabled for now because something reliably takes out the board 19-20 minutes in, +# and then it reboots and tries again until the job timeout. +.a530_piglit: + extends: + - .baremetal-deqp-test + - .a530-test + parallel: 2 + variables: + DEQP_SUITE: freedreno-a530-piglit + HWCI_START_WESTON: 1 + +.a530_piglit_gl: + extends: + - .a530_piglit + - .google-freedreno-manual-rules + parallel: null + variables: + PIGLIT_PROFILES: quick_gl + +.a618-test: + extends: + .lava-test:arm64 + variables: + FLAKES_CHANNEL: "#freedreno-ci" + BOOT_METHOD: depthcharge + KERNEL_IMAGE_TYPE: "" + # Increase the hangcheck timer for our spilling tests which bump up against + # the .5s default. + FREEDRENO_HANGCHECK_MS: 2000 + GPU_VERSION: freedreno-a618 + VK_DRIVER: freedreno + +.a618-test-kingoftown: + extends: + - .a618-test + variables: + DEVICE_TYPE: sc7180-trogdor-kingoftown + DTB: sc7180-trogdor-kingoftown + RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-kingoftown + +.a618-test-limozeen-nots-r5: + extends: + - .a618-test + variables: + DEVICE_TYPE: sc7180-trogdor-lazor-limozeen + DTB: sc7180-trogdor-lazor-limozeen-nots-r5 + RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-lazor-limozeen + +.lava-sm8350-hdk: + variables: + BOOT_METHOD: fastboot + KERNEL_IMAGE_NAME: "Image.gz" + KERNEL_IMAGE_TYPE: "" + # Increase the hangcheck timer for our spilling tests which bump up against + # the .5s default. + FREEDRENO_HANGCHECK_MS: 2000 + DEVICE_TYPE: sm8350-hdk + DTB: sm8350-hdk + GPU_VERSION: freedreno-a660 + RUNNER_TAG: mesa-ci-x86-64-lava-sm8350-hdk + VK_DRIVER: freedreno + +# 6 devices (2023-07-06) +.a630-test: + extends: + - .google-freedreno-test + variables: + FDO_CI_CONCURRENT: 10 + BM_KERNEL: 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 + tags: + - google-freedreno-cheza + script: + - ./install/bare-metal/cros-servo.sh + +.a630-full: + tags: + - google-freedreno-cheza-long diff --git a/src/freedreno/ci/gitlab-ci.yml b/src/freedreno/ci/gitlab-ci.yml index e2abdc2b3ee..30c5964bd42 100644 --- a/src/freedreno/ci/gitlab-ci.yml +++ b/src/freedreno/ci/gitlab-ci.yml @@ -1,209 +1,5 @@ -# Rules for changes that impact either freedreno or turnip. -.freedreno-common-rules: - rules: - - !reference [.no_scheduled_pipelines-rules, rules] - - changes: &freedreno_core_file_list - - src/freedreno/ci/**/* - - src/freedreno/common/**/* - - src/freedreno/drm/**/* - - src/freedreno/fdl/**/* - - src/freedreno/ir3/**/* - - src/freedreno/isa/**/* - - src/freedreno/registers/**/* - when: on_success - -.freedreno-common-manual-rules: - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.core-manual-rules, rules] - - changes: - *freedreno_core_file_list - when: manual - - -# Two different farms (Google Freedreno and Collabora farm) -.google-freedreno-rules: - stage: freedreno - rules: - - !reference [.freedreno-farm-rules, rules] - - !reference [.freedreno-common-rules, rules] - - !reference [.gl-rules, rules] - - changes: &freedreno_gl_file_list - - src/freedreno/ir2/**/* - - src/gallium/drivers/freedreno/**/* - - src/gallium/winsys/freedreno/**/* - when: on_success - -.collabora-freedreno-rules: - stage: freedreno - rules: - - !reference [.collabora-farm-rules, rules] - - !reference [.freedreno-common-rules, rules] - - !reference [.gl-rules, rules] - - changes: - *freedreno_gl_file_list - when: on_success - -.google-freedreno-manual-rules: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.freedreno-farm-manual-rules, rules] - - !reference [.freedreno-common-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *freedreno_gl_file_list - when: manual - -.collabora-freedreno-manual-rules: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.freedreno-common-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *freedreno_gl_file_list - when: manual - - -.google-turnip-rules: - stage: freedreno - rules: - - !reference [.freedreno-farm-rules, rules] - - !reference [.freedreno-common-rules, rules] - - !reference [.vulkan-rules, rules] - - changes: &freedreno_vulkan_file_list - - src/freedreno/vulkan/**/* - when: on_success - -.collabora-turnip-rules: - stage: freedreno - rules: - - !reference [.freedreno-farm-manual-rules, rules] - - !reference [.freedreno-common-rules, rules] - - !reference [.vulkan-rules, rules] - - changes: *freedreno_vulkan_file_list - when: on_success - -.google-turnip-manual-rules: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.freedreno-farm-manual-rules, rules] - - !reference [.freedreno-common-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - *freedreno_vulkan_file_list - when: manual - -.collabora-turnip-manual-rules: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.freedreno-common-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - *freedreno_vulkan_file_list - when: manual - -# For piglit and skqp test jobs that run both GL and VK tests. -.google-freedreno-turnip-rules: - rules: - - !reference [.google-freedreno-rules, rules] - - !reference [.google-turnip-rules, rules] - -.collabora-freedreno-turnip-rules: - rules: - - !reference [.collabora-freedreno-rules, rules] - - !reference [.collabora-turnip-rules, rules] - -.google-freedreno-rules-restricted: - stage: freedreno - rules: - - !reference [.restricted-rules, rules] - - !reference [.google-freedreno-rules, rules] - -.collabora-freedreno-rules-restricted: - stage: freedreno - rules: - - !reference [.restricted-rules, rules] - - !reference [.collabora-freedreno-rules, rules] - -.google-freedreno-rules-performance: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.performance-rules, rules] - - !reference [.google-freedreno-manual-rules, rules] - allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. - variables: - # Ensure that we are using the release build artifact - S3_ARTIFACT_NAME: mesa-arm64-default-release - needs: - - debian/arm64_test - - debian-arm64-release - dependencies: null - -.collabora-freedreno-rules-performance: - stage: freedreno - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.performance-rules, rules] - - !reference [.collabora-freedreno-manual-rules, rules] - allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. - variables: - JOB_PRIORITY: 40 - # Ensure that we are using the release build artifact - S3_ARTIFACT_NAME: mesa-arm64-default-release - needs: - - debian/x86_64_build - - debian-arm64-release - dependencies: null - - -.google-freedreno-test: - extends: - - .baremetal-test-arm64 - - .google-freedreno-rules - variables: - VK_DRIVER: freedreno - FLAKES_CHANNEL: "#freedreno-ci" - PIGLIT_PLATFORM: mixed_glx_egl - BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 $BM_KERNEL_EXTRA_ARGS root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init $BM_KERNELARGS" - script: - - ./install/bare-metal/fastboot.sh - -.baremetal-deqp-test-freedreno-vk: - extends: - - .baremetal-deqp-test - variables: - DEQP_VER: vk - # Increase the hangcheck timer for our spilling tests which bump up against - # the .5s default. - FREEDRENO_HANGCHECK_MS: 2000 - -.google-freedreno-test-traces: - extends: - - .piglit-traces-test - variables: - HWCI_TEST_SCRIPT: "/install/piglit/piglit-traces.sh" - HWCI_START_XORG: 1 - PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-freedreno.yml" - artifacts: - reports: - junit: results/junit.xml - -.a306-test: - extends: - - .google-freedreno-test - variables: - BM_KERNEL: Image.gz - BM_DTB: apq8016-sbc - GPU_VERSION: freedreno-a307 - tags: - - google-freedreno-db410c +include: + - local: 'src/freedreno/ci/gitlab-ci-inc.yml' a306_gl: extends: @@ -214,25 +10,6 @@ a306_gl: FDO_CI_CONCURRENT: 6 parallel: 5 -# New jobs. Leave it as manual for now. -.a306_piglit: - extends: - - .piglit-test - - .a306-test - - .google-freedreno-manual-rules - variables: - HWCI_START_XORG: 1 - -# Something happened and now this hangchecks and doesn't recover. Unkown when -# it started. -.a306_piglit_gl: - extends: - - .a306_piglit - variables: - PIGLIT_PROFILES: quick_gl - BM_KERNEL_EXTRA_ARGS: "msm.num_hw_submissions=1" - FDO_CI_CONCURRENT: 3 - a306_piglit_shader: extends: - .a306_piglit @@ -248,17 +25,6 @@ a306-traces: PIGLIT_REPLAY_DEVICE_NAME: "freedreno-a306" PIGLIT_RESULTS: "freedreno-a306-replay" -# 8 devices (2023-04-15) -.a530-test: - extends: - - .google-freedreno-test - variables: - BM_KERNEL: Image.gz - BM_DTB: apq8096-db820c - GPU_VERSION: freedreno-a530 - tags: - - google-freedreno-db820c - a530_gl: extends: - .baremetal-deqp-test @@ -269,28 +35,6 @@ a530_gl: FDO_CI_CONCURRENT: 3 # if 4, sometimes "deqp-gles31, not enough memory for the allocation" appears parallel: 6 -# piglit and piglit_gl since it takes a bit under 20 minutes and has a lot of flakes, so -# leave it as manual. The shader_tests are in the main a530_gl suite. -# -# Disabled for now because something reliably takes out the board 19-20 minutes in, -# and then it reboots and tries again until the job timeout. -.a530_piglit: - extends: - - .baremetal-deqp-test - - .a530-test - parallel: 2 - variables: - DEQP_SUITE: freedreno-a530-piglit - HWCI_START_WESTON: 1 - -.a530_piglit_gl: - extends: - - .a530_piglit - - .google-freedreno-manual-rules - parallel: null - variables: - PIGLIT_PROFILES: quick_gl - a530-traces: extends: - .google-freedreno-test-traces @@ -299,35 +43,6 @@ a530-traces: PIGLIT_REPLAY_DEVICE_NAME: "freedreno-a530" PIGLIT_RESULTS: "freedreno-a530-replay" -.a618-test: - extends: - .lava-test:arm64 - variables: - FLAKES_CHANNEL: "#freedreno-ci" - BOOT_METHOD: depthcharge - KERNEL_IMAGE_TYPE: "" - # Increase the hangcheck timer for our spilling tests which bump up against - # the .5s default. - FREEDRENO_HANGCHECK_MS: 2000 - GPU_VERSION: freedreno-a618 - VK_DRIVER: freedreno - -.a618-test-kingoftown: - extends: - - .a618-test - variables: - DEVICE_TYPE: sc7180-trogdor-kingoftown - DTB: sc7180-trogdor-kingoftown - RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-kingoftown - -.a618-test-limozeen-nots-r5: - extends: - - .a618-test - variables: - DEVICE_TYPE: sc7180-trogdor-lazor-limozeen - DTB: sc7180-trogdor-lazor-limozeen-nots-r5 - RUNNER_TAG: mesa-ci-x86-64-lava-sc7180-trogdor-lazor-limozeen - a618_vk: extends: - .lava-test-deqp:arm64 @@ -430,20 +145,6 @@ a618-traces-performance: - !reference [a618-traces, needs] - !reference [.piglit-performance:arm64, needs] -.lava-sm8350-hdk: - variables: - BOOT_METHOD: fastboot - KERNEL_IMAGE_NAME: "Image.gz" - KERNEL_IMAGE_TYPE: "" - # Increase the hangcheck timer for our spilling tests which bump up against - # the .5s default. - FREEDRENO_HANGCHECK_MS: 2000 - DEVICE_TYPE: sm8350-hdk - DTB: sm8350-hdk - GPU_VERSION: freedreno-a660 - RUNNER_TAG: mesa-ci-x86-64-lava-sm8350-hdk - VK_DRIVER: freedreno - a660_gl: extends: - .lava-test-deqp:arm64 @@ -473,24 +174,6 @@ a660_vk_full: DEQP_SUITE: freedreno-a660-vk-full JOB_TIMEOUT: 180 -# 6 devices (2023-07-06) -.a630-test: - extends: - - .google-freedreno-test - variables: - FDO_CI_CONCURRENT: 10 - BM_KERNEL: 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 - tags: - - google-freedreno-cheza - script: - - ./install/bare-metal/cros-servo.sh - -.a630-full: - tags: - - google-freedreno-cheza-long - a630_gl: extends: - .baremetal-deqp-test diff --git a/src/gallium/drivers/crocus/ci/gitlab-ci-inc.yml b/src/gallium/drivers/crocus/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..904535b2cf9 --- /dev/null +++ b/src/gallium/drivers/crocus/ci/gitlab-ci-inc.yml @@ -0,0 +1,37 @@ +# Manual test rules for using anholt's shared g41. +.anholt-g41-test: + extends: + - .crocus-manual-rules + - .test-gl + tags: + - anholt-g41 + variables: + GPU_VERSION: crocus-g41 + FLAKES_CHANNEL: "#intel-ci" + +# Manual test rules for using anholt's shared hsw. +.anholt-hsw-test: + extends: + - .test-gl + tags: + - anholt-hsw + variables: + FDO_CI_CONCURRENT: 12 + +# System is dead at the moment. needs maintenance. +.crocus-g41: + extends: + - .anholt-g41-test + - .deqp-test + variables: + DEQP_SUITE: crocus-g41 + PIGLIT_PLATFORM: gbm + +.crocus-g41-traces: + extends: + - .anholt-g41-test + - .piglit-traces-test + variables: + EGL_PLATFORM: "surfaceless" + PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-crocus.yml" + PIGLIT_REPLAY_DEVICE_NAME: "crocus-g41" diff --git a/src/gallium/drivers/crocus/ci/gitlab-ci.yml b/src/gallium/drivers/crocus/ci/gitlab-ci.yml index 2d0b24ef54a..f7fef8528cd 100644 --- a/src/gallium/drivers/crocus/ci/gitlab-ci.yml +++ b/src/gallium/drivers/crocus/ci/gitlab-ci.yml @@ -1,31 +1,5 @@ -# Manual test rules for using anholt's shared g41. -.anholt-g41-test: - extends: - - .crocus-manual-rules - - .test-gl - tags: - - anholt-g41 - variables: - GPU_VERSION: crocus-g41 - FLAKES_CHANNEL: "#intel-ci" - -# Manual test rules for using anholt's shared hsw. -.anholt-hsw-test: - extends: - - .test-gl - tags: - - anholt-hsw - variables: - FDO_CI_CONCURRENT: 12 - -# System is dead at the moment. needs maintenance. -.crocus-g41: - extends: - - .anholt-g41-test - - .deqp-test - variables: - DEQP_SUITE: crocus-g41 - PIGLIT_PLATFORM: gbm +include: + - local: 'src/gallium/drivers/crocus/ci/gitlab-ci-inc.yml' crocus-hsw: extends: @@ -37,15 +11,6 @@ crocus-hsw: DEQP_SUITE: crocus-hsw PIGLIT_PLATFORM: gbm -.crocus-g41-traces: - extends: - - .anholt-g41-test - - .piglit-traces-test - variables: - EGL_PLATFORM: "surfaceless" - PIGLIT_REPLAY_DESCRIPTION_FILE: "${CI_PROJECT_DIR}/install/traces-crocus.yml" - PIGLIT_REPLAY_DEVICE_NAME: "crocus-g41" - crocus-hsw-traces: extends: - .anholt-hsw-test diff --git a/src/gallium/drivers/llvmpipe/ci/gitlab-ci-inc.yml b/src/gallium/drivers/llvmpipe/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..30aca58c5c9 --- /dev/null +++ b/src/gallium/drivers/llvmpipe/ci/gitlab-ci-inc.yml @@ -0,0 +1,67 @@ +.llvmpipe-rules: + stage: software-renderer + rules: + - !reference [.gl-rules, rules] + - changes: &llvmpipe_file_list + - src/gallium/drivers/llvmpipe/**/* + - src/gallium/winsys/sw/**/* + when: on_success + +.llvmpipe-manual-rules: + stage: software-renderer + rules: + - !reference [.gl-manual-rules, rules] + - changes: *llvmpipe_file_list + when: manual + +.llvmpipe-cl-rules: + stage: software-renderer + rules: + - !reference [.no_scheduled_pipelines-rules, rules] + - changes: &llvmpipe_cl_files + - .gitlab-ci.yml + - .gitlab-ci/**/* + - meson.build + - .gitattributes + - include/**/* + - src/compiler/**/* + - src/util/**/* + when: on_success + - !reference [.gallium-core-rules, rules] + - changes: + *llvmpipe_file_list + when: on_success + +.llvmpipe-rusticl-rules: + rules: + - !reference [.llvmpipe-cl-rules, rules] + - changes: + - src/gallium/frontends/rusticl/**/* + when: on_success + + +.llvmpipe-test: + extends: + - .llvmpipe-rules + variables: + LIBGL_ALWAYS_SOFTWARE: "true" + GALLIUM_DRIVER: "llvmpipe" + FLAKES_CHANNEL: "#mesa-swrast-ci" + GPU_VERSION: llvmpipe + +.llvmpipe-piglit-cl: + extends: + - .test-cl + - .deqp-test + - .llvmpipe-test + variables: + LP_NUM_THREADS: 1 + PIGLIT_PROFILES: cl + +.llvmpipe-deqp-test: + variables: + GALLIVM_PERF: "nopt" + extends: + - .test-gl + - .deqp-test + - .llvmpipe-test diff --git a/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml index 11f78390e96..b5ff46794a5 100644 --- a/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml +++ b/src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml @@ -1,62 +1,5 @@ -.llvmpipe-rules: - stage: software-renderer - rules: - - !reference [.gl-rules, rules] - - changes: &llvmpipe_file_list - - src/gallium/drivers/llvmpipe/**/* - - src/gallium/winsys/sw/**/* - when: on_success - -.llvmpipe-manual-rules: - stage: software-renderer - rules: - - !reference [.gl-manual-rules, rules] - - changes: *llvmpipe_file_list - when: manual - -.llvmpipe-cl-rules: - stage: software-renderer - rules: - - !reference [.no_scheduled_pipelines-rules, rules] - - changes: &llvmpipe_cl_files - - .gitlab-ci.yml - - .gitlab-ci/**/* - - meson.build - - .gitattributes - - include/**/* - - src/compiler/**/* - - src/util/**/* - when: on_success - - !reference [.gallium-core-rules, rules] - - changes: - *llvmpipe_file_list - when: on_success - -.llvmpipe-rusticl-rules: - rules: - - !reference [.llvmpipe-cl-rules, rules] - - changes: - - src/gallium/frontends/rusticl/**/* - when: on_success - - -.llvmpipe-test: - extends: - - .llvmpipe-rules - variables: - LIBGL_ALWAYS_SOFTWARE: "true" - GALLIUM_DRIVER: "llvmpipe" - FLAKES_CHANNEL: "#mesa-swrast-ci" - GPU_VERSION: llvmpipe - -.llvmpipe-piglit-cl: - extends: - - .test-cl - - .deqp-test - - .llvmpipe-test - variables: - LP_NUM_THREADS: 1 - PIGLIT_PROFILES: cl +include: + - local: 'src/gallium/drivers/llvmpipe/ci/gitlab-ci-inc.yml' llvmpipe-piglit-rusticl: extends: @@ -82,14 +25,6 @@ llvmpipe-traces: PIGLIT_REPLAY_DEVICE_NAME: "gl-vmware-llvmpipe" PIGLIT_RESULTS: "llvmpipe-replay" -.llvmpipe-deqp-test: - variables: - GALLIVM_PERF: "nopt" - extends: - - .test-gl - - .deqp-test - - .llvmpipe-test - llvmpipe: variables: DEQP_SUITE: llvmpipe diff --git a/src/gallium/drivers/nouveau/ci/gitlab-ci-inc.yml b/src/gallium/drivers/nouveau/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..40bb321f947 --- /dev/null +++ b/src/gallium/drivers/nouveau/ci/gitlab-ci-inc.yml @@ -0,0 +1,82 @@ +.nouveau-rules: + stage: nouveau + rules: + - !reference [.anholt-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: &nouveau_file_list + - src/nouveau/**/* + - src/gallium/drivers/nouveau/**/* + - src/gallium/winsys/kmsro/**/* + - src/gallium/winsys/nouveau/**/* + when: on_success + +.nouveau-manual-rules: + stage: nouveau + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.anholt-farm-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *nouveau_file_list + when: manual + + +# General settings for bare-metal nouveau testing on either arm64 or arm32. +.nouveau-bm-test: + extends: + - .nouveau-rules + variables: + FLAKES_CHANNEL: "#nouveau-ci" + # We package nouveau as a module so that we can load it after the firmware is + # available on NFS. + HWCI_KERNEL_MODULES: tegra-drm,nouveau + script: + - ./install/bare-metal/poe-powered.sh + +.gk20a-test: + extends: + - .baremetal-test-arm32 + - .nouveau-bm-test + variables: + BM_BOOTFS: /baremetal-files/jetson-tk1/ + BM_CMDLINE: "console=ttyS0,115200n8 rw nfsrootdebug init=/init ip=dhcp root=/dev/nfs nfsroot=,tcp,nfsvers=4.2" + GPU_VERSION: nouveau-gk20a + # 4 CPUs, but spawn a couple extra threads to make sure they stay busy while + # some are waiting for the GPU. + FDO_CI_CONCURRENT: 6 + tags: + - anholt-nouveau-jetson-tk1 + +.gm20b-test: + extends: + - .baremetal-test-arm64 + - .nouveau-bm-test + variables: + BM_BOOTFS: /baremetal-files/jetson-nano/ + BM_CMDLINE: "console=ttyS0,115200n8 rw nfsrootdebug init=/init nfsroot=,tcp,nfsvers=4.2" + GPU_VERSION: nouveau-gm20b + # 4 CPUs, but spawn a couple extra threads to make sure they stay busy while + # some are waiting for the GPU. + FDO_CI_CONCURRENT: 6 + script: + - ./install/bare-metal/poe-powered.sh + tags: + - google-nouveau-jetson-nano + +# Single Jetson Nano board at anholt's house. +.gm20b-gles-full: + extends: + - .gm20b-test + - .nouveau-manual-rules + timeout: 2h + variables: + HWCI_TEST_SCRIPT: "/install/deqp-runner.sh" + DEQP_SUITE: nouveau-gm20b + TEST_PHASE_TIMEOUT: 120 + +.gm20b-gles: + extends: + - .gm20b-gles-full + timeout: 30m + variables: + DEQP_FRACTION: 10 diff --git a/src/gallium/drivers/nouveau/ci/gitlab-ci.yml b/src/gallium/drivers/nouveau/ci/gitlab-ci.yml index 62c9f7688de..7a5e33b6ce8 100644 --- a/src/gallium/drivers/nouveau/ci/gitlab-ci.yml +++ b/src/gallium/drivers/nouveau/ci/gitlab-ci.yml @@ -1,67 +1,5 @@ -.nouveau-rules: - stage: nouveau - rules: - - !reference [.anholt-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: &nouveau_file_list - - src/nouveau/**/* - - src/gallium/drivers/nouveau/**/* - - src/gallium/winsys/kmsro/**/* - - src/gallium/winsys/nouveau/**/* - when: on_success - -.nouveau-manual-rules: - stage: nouveau - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.anholt-farm-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *nouveau_file_list - when: manual - - -# General settings for bare-metal nouveau testing on either arm64 or arm32. -.nouveau-bm-test: - extends: - - .nouveau-rules - variables: - FLAKES_CHANNEL: "#nouveau-ci" - # We package nouveau as a module so that we can load it after the firmware is - # available on NFS. - HWCI_KERNEL_MODULES: tegra-drm,nouveau - script: - - ./install/bare-metal/poe-powered.sh - -.gk20a-test: - extends: - - .baremetal-test-arm32 - - .nouveau-bm-test - variables: - BM_BOOTFS: /baremetal-files/jetson-tk1/ - BM_CMDLINE: "console=ttyS0,115200n8 rw nfsrootdebug init=/init ip=dhcp root=/dev/nfs nfsroot=,tcp,nfsvers=4.2" - GPU_VERSION: nouveau-gk20a - # 4 CPUs, but spawn a couple extra threads to make sure they stay busy while - # some are waiting for the GPU. - FDO_CI_CONCURRENT: 6 - tags: - - anholt-nouveau-jetson-tk1 - -.gm20b-test: - extends: - - .baremetal-test-arm64 - - .nouveau-bm-test - variables: - BM_BOOTFS: /baremetal-files/jetson-nano/ - BM_CMDLINE: "console=ttyS0,115200n8 rw nfsrootdebug init=/init nfsroot=,tcp,nfsvers=4.2" - GPU_VERSION: nouveau-gm20b - # 4 CPUs, but spawn a couple extra threads to make sure they stay busy while - # some are waiting for the GPU. - FDO_CI_CONCURRENT: 6 - script: - - ./install/bare-metal/poe-powered.sh - tags: - - google-nouveau-jetson-nano +include: + - local: 'src/gallium/drivers/nouveau/ci/gitlab-ci-inc.yml' # 6 Jetson TK1 boards at anholt's house. gk20a-gles: @@ -72,21 +10,3 @@ gk20a-gles: variables: HWCI_TEST_SCRIPT: "/install/deqp-runner.sh" DEQP_SUITE: nouveau-gk20a - -# Single Jetson Nano board at anholt's house. -.gm20b-gles-full: - extends: - - .gm20b-test - - .nouveau-manual-rules - timeout: 2h - variables: - HWCI_TEST_SCRIPT: "/install/deqp-runner.sh" - DEQP_SUITE: nouveau-gm20b - TEST_PHASE_TIMEOUT: 120 - -.gm20b-gles: - extends: - - .gm20b-gles-full - timeout: 30m - variables: - DEQP_FRACTION: 10 diff --git a/src/gallium/drivers/softpipe/ci/gitlab-ci-inc.yml b/src/gallium/drivers/softpipe/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..64563744357 --- /dev/null +++ b/src/gallium/drivers/softpipe/ci/gitlab-ci-inc.yml @@ -0,0 +1,25 @@ +.softpipe-rules: + stage: software-renderer + rules: + - !reference [.gl-rules, rules] + - changes: &softpipe_file_list + - src/gallium/drivers/softpipe/**/* + - src/gallium/winsys/sw/**/* + when: on_success + +.softpipe-test: + variables: + GPU_VERSION: softpipe + LIBGL_ALWAYS_SOFTWARE: "true" + FLAKES_CHANNEL: "#mesa-swrast-ci" + GALLIUM_DRIVER: "softpipe" + +.softpipe-deqp-test: + extends: + - .test-gl + - .deqp-test + - .softpipe-test + # this must be last to avoid breaking dependency rules + - .softpipe-rules + variables: + DEQP_EXPECTED_RENDERER: softpipe diff --git a/src/gallium/drivers/softpipe/ci/gitlab-ci.yml b/src/gallium/drivers/softpipe/ci/gitlab-ci.yml index 3808fc84121..3f4fa1cd5a7 100644 --- a/src/gallium/drivers/softpipe/ci/gitlab-ci.yml +++ b/src/gallium/drivers/softpipe/ci/gitlab-ci.yml @@ -1,29 +1,5 @@ -.softpipe-rules: - stage: software-renderer - rules: - - !reference [.gl-rules, rules] - - changes: &softpipe_file_list - - src/gallium/drivers/softpipe/**/* - - src/gallium/winsys/sw/**/* - when: on_success - - -.softpipe-test: - variables: - GPU_VERSION: softpipe - LIBGL_ALWAYS_SOFTWARE: "true" - FLAKES_CHANNEL: "#mesa-swrast-ci" - GALLIUM_DRIVER: "softpipe" - -.softpipe-deqp-test: - extends: - - .test-gl - - .deqp-test - - .softpipe-test - # this must be last to avoid breaking dependency rules - - .softpipe-rules - variables: - DEQP_EXPECTED_RENDERER: softpipe +include: + - local: 'src/gallium/drivers/softpipe/ci/gitlab-ci-inc.yml' softpipe: variables: diff --git a/src/gallium/drivers/virgl/ci/gitlab-ci-inc.yml b/src/gallium/drivers/virgl/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..bd46445aa32 --- /dev/null +++ b/src/gallium/drivers/virgl/ci/gitlab-ci-inc.yml @@ -0,0 +1,79 @@ +.virgl-rules: + stage: layered-backends + rules: + - !reference [.gl-rules, rules] + - !reference [.llvmpipe-rules, rules] + - changes: &virgl_file_list + - src/gallium/drivers/virgl/**/* + - src/gallium/winsys/virgl/**/* + when: on_success + +.virgl-iris-manual-rules: + stage: layered-backends + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *virgl_file_list + when: manual + - !reference [.iris-manual-rules, rules] + +.virgl-iris-rules-performance: + stage: layered-backends + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.performance-rules, rules] + - !reference [.gl-manual-rules, rules] + - !reference [.llvmpipe-manual-rules, rules] + - changes: + *virgl_file_list + when: manual + allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. + variables: + JOB_PRIORITY: 40 + S3_ARTIFACT_NAME: "mesa-x86_64-default-release" + needs: + - kernel+rootfs_x86_64 + - debian-release + +.virpipe-test: + extends: + - .test-gl + - .virgl-rules + variables: + GALLIVM_PERF: nopt + FLAKES_CHANNEL: "#virgl-ci" + script: + - xvfb-run --server-args='-noreset' bash -c ". $SCRIPTS_DIR/setup-test-env.sh && GALLIUM_DRIVER=virpipe install/deqp-runner.sh" + +.virgl-test: + extends: + - .test-gl + - .virgl-rules + variables: + FLAKES_CHANNEL: "#virgl-ci" + GALLIUM_DRIVER: "virgl" + CROSVM_GALLIUM_DRIVER: "llvmpipe" + CROSVM_GPU_ARGS: "gles=false,backend=virglrenderer,egl=true,surfaceless=true,width=1024,height=768" + GALLIVM_PERF: "nopt,no_quad_lod" + +.virgl-iris-test: + extends: + - .lava-piglit-traces:x86_64 + variables: + DEVICE_TYPE: asus-cx9400-volteer + BOOT_METHOD: depthcharge + HWCI_KERNEL_MODULES: vhost_vsock + HWCI_KVM: "true" + HWCI_TEST_SCRIPT: "LP_NUM_THREADS=${FDO_CI_CONCURRENT} FDO_CI_CONCURRENT=1 /install/crosvm-runner.sh /install/piglit/piglit-traces.sh" + GPU_VERSION: virgl + DRIVER_NAME: virgl + GALLIUM_DRIVER: virgl + CROSVM_GALLIUM_DRIVER: iris + CROSVM_GPU_ARGS: "gles=false,backend=virglrenderer,egl=true,surfaceless=true,width=1024,height=768" + EGL_PLATFORM: surfaceless + PIGLIT_PROFILES: replay + PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-virgl-iris.yml" + RUNNER_TAG: mesa-ci-x86-64-lava-asus-cx9400-volteer diff --git a/src/gallium/drivers/virgl/ci/gitlab-ci.yml b/src/gallium/drivers/virgl/ci/gitlab-ci.yml index 46ce3356702..09eeaa6e4f5 100644 --- a/src/gallium/drivers/virgl/ci/gitlab-ci.yml +++ b/src/gallium/drivers/virgl/ci/gitlab-ci.yml @@ -1,53 +1,5 @@ -.virgl-rules: - stage: layered-backends - rules: - - !reference [.gl-rules, rules] - - !reference [.llvmpipe-rules, rules] - - changes: &virgl_file_list - - src/gallium/drivers/virgl/**/* - - src/gallium/winsys/virgl/**/* - when: on_success - -.virgl-iris-manual-rules: - stage: layered-backends - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *virgl_file_list - when: manual - - !reference [.iris-manual-rules, rules] - -.virgl-iris-rules-performance: - stage: layered-backends - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.performance-rules, rules] - - !reference [.gl-manual-rules, rules] - - !reference [.llvmpipe-manual-rules, rules] - - changes: - *virgl_file_list - when: manual - allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. - variables: - JOB_PRIORITY: 40 - S3_ARTIFACT_NAME: "mesa-x86_64-default-release" - needs: - - kernel+rootfs_x86_64 - - debian-release - - -.virpipe-test: - extends: - - .test-gl - - .virgl-rules - variables: - GALLIVM_PERF: nopt - FLAKES_CHANNEL: "#virgl-ci" - script: - - xvfb-run --server-args='-noreset' bash -c ". $SCRIPTS_DIR/setup-test-env.sh && GALLIUM_DRIVER=virpipe install/deqp-runner.sh" +include: + - local: 'src/gallium/drivers/virgl/ci/gitlab-ci-inc.yml' virpipe-on-gl: extends: @@ -59,17 +11,6 @@ virpipe-on-gl: PIGLIT_PLATFORM: x11_egl DEQP_FRACTION: 4 -.virgl-test: - extends: - - .test-gl - - .virgl-rules - variables: - FLAKES_CHANNEL: "#virgl-ci" - GALLIUM_DRIVER: "virgl" - CROSVM_GALLIUM_DRIVER: "llvmpipe" - CROSVM_GPU_ARGS: "gles=false,backend=virglrenderer,egl=true,surfaceless=true,width=1024,height=768" - GALLIVM_PERF: "nopt,no_quad_lod" - virgl-on-gl: variables: DEQP_SUITE: virgl-gl @@ -109,25 +50,6 @@ virgl-traces: # Couldn't get GitLab CI to correctly substitute the variable in the yaml - LP_NUM_THREADS=${FDO_CI_CONCURRENT} FDO_CI_CONCURRENT=1 install/crosvm-runner.sh install/piglit/piglit-traces.sh -.virgl-iris-test: - extends: - - .lava-piglit-traces:x86_64 - variables: - DEVICE_TYPE: asus-cx9400-volteer - BOOT_METHOD: depthcharge - HWCI_KERNEL_MODULES: vhost_vsock - HWCI_KVM: "true" - HWCI_TEST_SCRIPT: "LP_NUM_THREADS=${FDO_CI_CONCURRENT} FDO_CI_CONCURRENT=1 /install/crosvm-runner.sh /install/piglit/piglit-traces.sh" - GPU_VERSION: virgl - DRIVER_NAME: virgl - GALLIUM_DRIVER: virgl - CROSVM_GALLIUM_DRIVER: iris - CROSVM_GPU_ARGS: "gles=false,backend=virglrenderer,egl=true,surfaceless=true,width=1024,height=768" - EGL_PLATFORM: surfaceless - PIGLIT_PROFILES: replay - PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-virgl-iris.yml" - RUNNER_TAG: mesa-ci-x86-64-lava-asus-cx9400-volteer - .virgl-iris-traces: extends: - .virgl-iris-test diff --git a/src/gallium/drivers/zink/ci/gitlab-ci-inc.yml b/src/gallium/drivers/zink/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..8c06c5c5d90 --- /dev/null +++ b/src/gallium/drivers/zink/ci/gitlab-ci-inc.yml @@ -0,0 +1,125 @@ +.zink-common-rules: + rules: + - !reference [.gl-rules, rules] + - changes: + - src/gallium/drivers/zink/**/* + when: on_success + +.zink-common-manual-rules: + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.gl-manual-rules, rules] + - changes: + - src/gallium/drivers/zink/**/* + when: manual + +.zink-lvp-rules: + stage: layered-backends + rules: + - !reference [.lavapipe-rules, rules] + - !reference [.zink-common-rules, rules] + +.zink-anv-rules: + stage: layered-backends + rules: + - !reference [.anv-rules, rules] + - !reference [.zink-common-rules, rules] + +.zink-anv-manual-rules: + stage: layered-backends + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.anv-manual-rules, rules] + - !reference [.zink-common-manual-rules, rules] + +.zink-anv-rules-restricted: + stage: layered-backends + rules: + - !reference [.restricted-rules, rules] + - !reference [.anv-rules, rules] + - !reference [.zink-common-rules, rules] + +.zink-turnip-rules: + stage: layered-backends + rules: + - !reference [.collabora-turnip-rules, rules] + - !reference [.zink-common-rules, rules] + variables: + ZINK_DEBUG: optimal_keys + +.zink-turnip-manual-rules: + stage: layered-backends + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-turnip-manual-rules, rules] + - !reference [.zink-common-manual-rules, rules] + +.zink-radv-rules: + stage: layered-backends + rules: + - !reference [.radv-valve-rules, rules] + - !reference [.zink-common-rules, rules] + +.zink-radv-manual-rules: + stage: layered-backends + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.radv-valve-manual-rules, rules] + - !reference [.zink-common-manual-rules, rules] + - changes: + - .gitlab-ci/container/build-piglit.sh + when: manual + +.zink-test: + timeout: 30m + variables: + MESA_LOADER_DRIVER_OVERRIDE: "zink" + FLAKES_CHANNEL: "#zink-ci" + +.zink-trace-test: + extends: + - .zink-test + variables: + # The libX11 in the debian we use doesn't XInitThreads() by default (need + # 1.8.1 for that), and eglretrace's waffle GLX path doesn't call it either, + # which ends up causing trouble with kopper's X usage. Use gbm for our + # trace replay, instead. + # https://gitlab.freedesktop.org/mesa/mesa/-/issues/6753 + HWCI_START_XORG: "" + WAFFLE_PLATFORM: gbm + PIGLIT_PLATFORM: gbm + +.zink-lvp-test: + extends: + - .zink-lvp-rules + - .zink-test + variables: + LIBGL_ALWAYS_SOFTWARE: "true" + LVP_POISON_MEMORY: "1" + GPU_VERSION: zink-lvp + # Fix non-conformant llvmpipe filter defaults + GALLIVM_PERF: "no_quad_lod" + +.zink-anv-test: + extends: + - .anv-tgl-test + - .zink-anv-rules + - .zink-test + variables: + VK_DRIVER: intel + GPU_VERSION: zink-anv-tgl + +.radv-zink-test-valve: + timeout: 30m + extends: + - .zink-test + - .test-radv + - .b2c-test-gl + variables: + DEQP_SUITE: zink-radv + HWCI_TEST_SCRIPT: ./install/deqp-runner.sh + B2C_JOB_SUCCESS_REGEX: 'Execution is over, pipeline status: 0' + B2C_TIMEOUT_OVERALL_MINUTES: 20 + + # Disable reporting, since DUTs don't have internet access + FLAKES_CHANNEL: "" \ No newline at end of file diff --git a/src/gallium/drivers/zink/ci/gitlab-ci.yml b/src/gallium/drivers/zink/ci/gitlab-ci.yml index dd5aee804c3..36b0920426e 100644 --- a/src/gallium/drivers/zink/ci/gitlab-ci.yml +++ b/src/gallium/drivers/zink/ci/gitlab-ci.yml @@ -1,105 +1,5 @@ -.zink-common-rules: - rules: - - !reference [.gl-rules, rules] - - changes: - - src/gallium/drivers/zink/**/* - when: on_success - -.zink-common-manual-rules: - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.gl-manual-rules, rules] - - changes: - - src/gallium/drivers/zink/**/* - when: manual - -.zink-lvp-rules: - stage: layered-backends - rules: - - !reference [.lavapipe-rules, rules] - - !reference [.zink-common-rules, rules] - -.zink-anv-rules: - stage: layered-backends - rules: - - !reference [.anv-rules, rules] - - !reference [.zink-common-rules, rules] - -.zink-anv-manual-rules: - stage: layered-backends - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.anv-manual-rules, rules] - - !reference [.zink-common-manual-rules, rules] - -.zink-anv-rules-restricted: - stage: layered-backends - rules: - - !reference [.restricted-rules, rules] - - !reference [.anv-rules, rules] - - !reference [.zink-common-rules, rules] - -.zink-turnip-rules: - stage: layered-backends - rules: - - !reference [.collabora-turnip-rules, rules] - - !reference [.zink-common-rules, rules] - variables: - ZINK_DEBUG: optimal_keys - -.zink-turnip-manual-rules: - stage: layered-backends - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-turnip-manual-rules, rules] - - !reference [.zink-common-manual-rules, rules] - -.zink-radv-rules: - stage: layered-backends - rules: - - !reference [.radv-valve-rules, rules] - - !reference [.zink-common-rules, rules] - -.zink-radv-manual-rules: - stage: layered-backends - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.radv-valve-manual-rules, rules] - - !reference [.zink-common-manual-rules, rules] - - changes: - - .gitlab-ci/container/build-piglit.sh - when: manual - - -.zink-test: - timeout: 30m - variables: - MESA_LOADER_DRIVER_OVERRIDE: "zink" - FLAKES_CHANNEL: "#zink-ci" - -.zink-trace-test: - extends: - - .zink-test - variables: - # The libX11 in the debian we use doesn't XInitThreads() by default (need - # 1.8.1 for that), and eglretrace's waffle GLX path doesn't call it either, - # which ends up causing trouble with kopper's X usage. Use gbm for our - # trace replay, instead. - # https://gitlab.freedesktop.org/mesa/mesa/-/issues/6753 - HWCI_START_XORG: "" - WAFFLE_PLATFORM: gbm - PIGLIT_PLATFORM: gbm - -.zink-lvp-test: - extends: - - .zink-lvp-rules - - .zink-test - variables: - LIBGL_ALWAYS_SOFTWARE: "true" - LVP_POISON_MEMORY: "1" - GPU_VERSION: zink-lvp - # Fix non-conformant llvmpipe filter defaults - GALLIVM_PERF: "no_quad_lod" +include: + - local: 'src/gallium/drivers/zink/ci/gitlab-ci-inc.yml' zink-lvp: extends: @@ -117,15 +17,6 @@ zink-lvp: script: | xvfb-run --server-args='-noreset' bash -c ". $SCRIPTS_DIR/setup-test-env.sh && ${XVFB_SCRIPT}" -.zink-anv-test: - extends: - - .anv-tgl-test - - .zink-anv-rules - - .zink-test - variables: - VK_DRIVER: intel - GPU_VERSION: zink-anv-tgl - zink-anv-tgl: extends: - .zink-anv-test @@ -215,21 +106,6 @@ zink-tu-a618-traces-performance: - !reference [.piglit-performance:arm64, needs] ############### Combined testing (GL, GLES, Piglit) on RADV -.radv-zink-test-valve: - timeout: 30m - extends: - - .zink-test - - .test-radv - - .b2c-test-gl - variables: - DEQP_SUITE: zink-radv - HWCI_TEST_SCRIPT: ./install/deqp-runner.sh - B2C_JOB_SUCCESS_REGEX: 'Execution is over, pipeline status: 0' - B2C_TIMEOUT_OVERALL_MINUTES: 20 - - # Disable reporting, since DUTs don't have internet access - FLAKES_CHANNEL: "" - zink-radv-polaris10-valve: extends: - .radv-zink-test-valve diff --git a/src/gallium/frontends/lavapipe/ci/gitlab-ci-inc.yml b/src/gallium/frontends/lavapipe/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..c730ba5d626 --- /dev/null +++ b/src/gallium/frontends/lavapipe/ci/gitlab-ci-inc.yml @@ -0,0 +1,30 @@ +.lavapipe-rules: + stage: software-renderer + rules: + - !reference [.vulkan-rules, rules] + - !reference [.gallium-core-rules, rules] + - changes: &lavapipe_file_list + - src/gallium/drivers/llvmpipe/**/* + - src/gallium/frontends/lavapipe/**/* + - src/gallium/winsys/sw/**/* + when: on_success + +.lavapipe-manual-rules: + stage: software-renderer + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.vulkan-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: *lavapipe_file_list + when: manual + +.lavapipe-test: + stage: software-renderer + extends: + - .test-vk + - .lavapipe-rules + variables: + GPU_VERSION: lvp + VK_DRIVER: lvp + DEQP_EXPECTED_RENDERER: llvmpipe + LVP_POISON_MEMORY: "1" diff --git a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml index c7761e73f3e..41ee5d0802f 100644 --- a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml +++ b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml @@ -1,34 +1,5 @@ -.lavapipe-rules: - stage: software-renderer - rules: - - !reference [.vulkan-rules, rules] - - !reference [.gallium-core-rules, rules] - - changes: &lavapipe_file_list - - src/gallium/drivers/llvmpipe/**/* - - src/gallium/frontends/lavapipe/**/* - - src/gallium/winsys/sw/**/* - when: on_success - -.lavapipe-manual-rules: - stage: software-renderer - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.vulkan-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: *lavapipe_file_list - when: manual - - -.lavapipe-test: - stage: software-renderer - extends: - - .test-vk - - .lavapipe-rules - variables: - GPU_VERSION: lvp - VK_DRIVER: lvp - DEQP_EXPECTED_RENDERER: llvmpipe - LVP_POISON_MEMORY: "1" +include: + - local: 'src/gallium/frontends/lavapipe/ci/gitlab-ci-inc.yml' lavapipe: variables: diff --git a/src/intel/ci/gitlab-ci-inc.yml b/src/intel/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..05f34595218 --- /dev/null +++ b/src/intel/ci/gitlab-ci-inc.yml @@ -0,0 +1,338 @@ +.i915g-rules: + stage: intel + rules: + - !reference [.gl-rules, rules] + - changes: &i915g_file_list + - src/gallium/drivers/i915/**/* + - src/gallium/winsys/i915/**/* + - src/intel/**/* + when: on_success + +.i915g-manual-rules: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.gl-manual-rules, rules] + - changes: + *i915g_file_list + when: manual + +.crocus-rules: + stage: intel + rules: + - !reference [.anholt-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: &crocus_file_list + - src/gallium/drivers/crocus/**/* + - src/gallium/winsys/crocus/**/* + - src/intel/**/* + when: on_success + +.crocus-manual-rules: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.anholt-farm-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *crocus_file_list + when: manual + +.iris-rules: + stage: intel + rules: + - !reference [.no_scheduled_pipelines-rules, rules] + - !reference [.collabora-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: &iris_file_list + - src/gallium/drivers/iris/**/* + - src/gallium/winsys/iris/**/* + - src/intel/**/* + when: on_success + +.iris-manual-rules: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *iris_file_list + when: manual + +# Unfortunately we can't sed the on_success from another rules set, so we have +# to do duplicate the files lists to set the job to manual (see +# .performance-rules) +.iris-rules-performance: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.performance-rules, rules] + - !reference [.gl-manual-rules, rules] + - changes: + *iris_file_list + when: manual + allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. + variables: + JOB_PRIORITY: 40 + S3_ARTIFACT_NAME: "mesa-x86_64-default-release" + needs: + - kernel+rootfs_x86_64 + - debian-release + +.anv-rules: + stage: intel + rules: + - !reference [.no_scheduled_pipelines-rules, rules] + - !reference [.collabora-farm-rules, rules] + - !reference [.vulkan-rules, rules] + - changes: + - src/intel/**/* + when: on_success + +.anv-manual-rules: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.collabora-farm-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + - src/intel/**/* + when: manual + +.hasvk-rules: + stage: intel + rules: + - !reference [.anholt-farm-rules, rules] + - !reference [.vulkan-rules, rules] + - changes: + - src/intel/**/* + when: on_success + +.hasvk-manual-rules: + stage: intel + retry: !reference [.scheduled_pipeline-rules, retry] + rules: + - !reference [.anholt-farm-manual-rules, rules] + - !reference [.vulkan-manual-rules, rules] + - changes: + - src/intel/**/* + when: on_success + +# ruleset to trigger on changes affecting either anv or iris, for jobs using both (piglit, skqp) +.intel-rules: + stage: intel + rules: + - !reference [.iris-rules, rules] + - !reference [.anv-rules, rules] + +.intel-manual-rules: + stage: intel + rules: + - !reference [.iris-manual-rules, rules] + - !reference [.anv-manual-rules, rules] + + +.intel-common-test: + extends: + - .lava-test-deqp:x86_64 + variables: + DTB: "" + BOOT_METHOD: depthcharge + KERNEL_IMAGE_TYPE: "" + FLAKES_CHANNEL: "#intel-ci" + HWCI_FREQ_MAX: "true" + +.anv-test: + extends: + - .intel-common-test + - .anv-rules + variables: + DRIVER_NAME: anv + +.iris-test: + extends: + - .intel-common-test + - .iris-rules + variables: + DRIVER_NAME: iris + +.intel-test: + extends: + - .intel-common-test + - .intel-rules + +## ANV only +# 15; 10 i5 boards + 5 i7 boards (2023-01-17) +.anv-tgl-test: + extends: + - .anv-test + variables: + DEVICE_TYPE: asus-cx9400-volteer + GPU_VERSION: anv-tgl + FDO_CI_CONCURRENT: 9 + RUNNER_TAG: mesa-ci-x86-64-lava-asus-cx9400-volteer + +.anv-angle-test: + extends: + - .anv-test + - .intel-rules # Note: Xorg uses iris, so depend on both GL and vulkan + variables: + VK_DRIVER: intel + USE_ANGLE: 1 + # ANGLE requires X11 running for some reason. + HWCI_START_XORG: 1 + +## Iris only +# 5 boards +.iris-apl-test: + extends: + - .iris-test + variables: + DEVICE_TYPE: asus-C523NA-A20057-coral + GPU_VERSION: iris-apl + RUNNER_TAG: mesa-ci-x86-64-lava-asus-C523NA-A20057-coral + FDO_CI_CONCURRENT: 5 + +# 4 boards +.iris-glk-test: + extends: + - .iris-test + variables: + DEVICE_TYPE: hp-x360-12b-ca0010nr-n4020-octopus + GPU_VERSION: iris-glk + RUNNER_TAG: mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus + FDO_CI_CONCURRENT: 3 + +# 5 boards, manual for now due to the GPU being occasionally stuck +.iris-amly-test: + extends: + - .iris-test + - .iris-manual-rules + variables: + DEVICE_TYPE: asus-C433TA-AJ0005-rammus + GPU_VERSION: iris-amly + RUNNER_TAG: mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus + FDO_CI_CONCURRENT: 5 + +# 7 boards +.iris-kbl-test: + extends: + - .iris-test + variables: + DEVICE_TYPE: hp-x360-14-G1-sona + GPU_VERSION: iris-kbl + RUNNER_TAG: mesa-ci-x86-64-lava-hp-x360-14-G1-sona + FDO_CI_CONCURRENT: 9 + +# 5 boards +.iris-whl-test: + extends: + - .iris-test + variables: + DEVICE_TYPE: dell-latitude-5400-8665U-sarien + GPU_VERSION: iris-whl + RUNNER_TAG: mesa-ci-x86-64-lava-dell-latitude-5400-8665U-sarien + FDO_CI_CONCURRENT: 9 + +# 5 boards +.iris-cml-test: + extends: + - .iris-test + - .iris-manual-rules # Devices have too often network problems and fail to boot. + variables: + DEVICE_TYPE: asus-C436FA-Flip-hatch + GPU_VERSION: iris-cml + RUNNER_TAG: mesa-ci-x86-64-lava-asus-C436FA-flip-hatch + FDO_CI_CONCURRENT: 9 + +# 8 boards +.jsl-test: + variables: + DEVICE_TYPE: acer-cb317-1h-c3z6-dedede + GPU_VERSION: iris-jsl + RUNNER_TAG: mesa-ci-x86-64-lava-acer-cb317-1h-c3z6-dedede + FDO_CI_CONCURRENT: 3 + +.iris-whl-deqp: + extends: + - .iris-whl-test + variables: + DEQP_SUITE: iris-whl + parallel: 4 + +.iris-traces: + extends: + - .lava-traces-base + variables: + EGL_PLATFORM: surfaceless + PIGLIT_REPLAY_DEVICE_NAME: "gl-${GPU_VERSION}" + PIGLIT_RESULTS: "${GPU_VERSION}-${PIGLIT_PROFILES}" + PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-iris.yml" + PIGLIT_REPLAY_EXTRA_ARGS: --keep-image + +.iris-whl-traces: + variables: + GPU_VERSION: intel-whl + extends: + - .iris-whl-test + - .iris-traces + +.profile-traces: + extends: + - .iris-traces + - .iris-rules-performance + variables: + PIGLIT_REPLAY_SUBCOMMAND: "profile" + PIGLIT_REPLAY_EXTRA_ARGS: "--db-path ${CI_PROJECT_DIR}/replayer-db/" + # More than this can hit OOM due to BOs leaked during the replay of the last frame + PIGLIT_REPLAY_LOOP_TIMES: 150 + # We don't want for more than one workload to be submitted to the GPU at a time + FDO_CI_CONCURRENT: 1 + # Piglit is very sparse in its status output and downloads of big traces can take a while + DEVICE_HANGING_TIMEOUT_SEC: 600 + # So we aren't capped by VSync by the X server + EGL_PLATFORM: surfaceless + GIT_STRATEGY: none + HWCI_FREQ_MAX: "true" + LAVA_TAGS: "cbg-0" + # Ensure that we are using the release build artifact + S3_ARTIFACT_NAME: mesa-x86_64-default-release + +.iris-whl-traces-performance: + extends: + - .iris-whl-test + - .profile-traces + variables: + GPU_VERSION: intel-whl + +.iris-cml-traces-performance: + extends: + - .iris-cml-test + - .profile-traces + variables: + GPU_VERSION: intel-cml + +## Intel (anv + iris) +.intel-tgl-test: + extends: + - .anv-tgl-test + - .intel-test + variables: + GPU_VERSION: intel-tgl + +.intel-whl-test: + extends: + - .iris-whl-test + - .intel-test + variables: + GPU_VERSION: intel-whl + +.intel-whl-skqp: + extends: + - .intel-whl-test + variables: + DEQP_SUITE: intel-whl-skqp + VK_DRIVER: intel + HWCI_START_XORG: 1 diff --git a/src/intel/ci/gitlab-ci.yml b/src/intel/ci/gitlab-ci.yml index 3c480353720..05a33fa3440 100644 --- a/src/intel/ci/gitlab-ci.yml +++ b/src/intel/ci/gitlab-ci.yml @@ -1,178 +1,5 @@ -.i915g-rules: - stage: intel - rules: - - !reference [.gl-rules, rules] - - changes: &i915g_file_list - - src/gallium/drivers/i915/**/* - - src/gallium/winsys/i915/**/* - - src/intel/**/* - when: on_success - -.i915g-manual-rules: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.gl-manual-rules, rules] - - changes: - *i915g_file_list - when: manual - -.crocus-rules: - stage: intel - rules: - - !reference [.anholt-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: &crocus_file_list - - src/gallium/drivers/crocus/**/* - - src/gallium/winsys/crocus/**/* - - src/intel/**/* - when: on_success - -.crocus-manual-rules: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.anholt-farm-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *crocus_file_list - when: manual - -.iris-rules: - stage: intel - rules: - - !reference [.no_scheduled_pipelines-rules, rules] - - !reference [.collabora-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: &iris_file_list - - src/gallium/drivers/iris/**/* - - src/gallium/winsys/iris/**/* - - src/intel/**/* - when: on_success - -.iris-manual-rules: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *iris_file_list - when: manual - -# Unfortunately we can't sed the on_success from another rules set, so we have -# to do duplicate the files lists to set the job to manual (see -# .performance-rules) -.iris-rules-performance: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.performance-rules, rules] - - !reference [.gl-manual-rules, rules] - - changes: - *iris_file_list - when: manual - allow_failure: true # see comment in .performance-rules, which we don't inherit this line from. - variables: - JOB_PRIORITY: 40 - S3_ARTIFACT_NAME: "mesa-x86_64-default-release" - needs: - - kernel+rootfs_x86_64 - - debian-release - -.anv-rules: - stage: intel - rules: - - !reference [.no_scheduled_pipelines-rules, rules] - - !reference [.collabora-farm-rules, rules] - - !reference [.vulkan-rules, rules] - - changes: - - src/intel/**/* - when: on_success - -.anv-manual-rules: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.collabora-farm-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - - src/intel/**/* - when: manual - -.hasvk-rules: - stage: intel - rules: - - !reference [.anholt-farm-rules, rules] - - !reference [.vulkan-rules, rules] - - changes: - - src/intel/**/* - when: on_success - -.hasvk-manual-rules: - stage: intel - retry: !reference [.scheduled_pipeline-rules, retry] - rules: - - !reference [.anholt-farm-manual-rules, rules] - - !reference [.vulkan-manual-rules, rules] - - changes: - - src/intel/**/* - when: on_success - -# ruleset to trigger on changes affecting either anv or iris, for jobs using both (piglit, skqp) -.intel-rules: - stage: intel - rules: - - !reference [.iris-rules, rules] - - !reference [.anv-rules, rules] - -.intel-manual-rules: - stage: intel - rules: - - !reference [.iris-manual-rules, rules] - - !reference [.anv-manual-rules, rules] - - -.intel-common-test: - extends: - - .lava-test-deqp:x86_64 - variables: - DTB: "" - BOOT_METHOD: depthcharge - KERNEL_IMAGE_TYPE: "" - FLAKES_CHANNEL: "#intel-ci" - HWCI_FREQ_MAX: "true" - -.anv-test: - extends: - - .intel-common-test - - .anv-rules - variables: - DRIVER_NAME: anv - -.iris-test: - extends: - - .intel-common-test - - .iris-rules - variables: - DRIVER_NAME: iris - -.intel-test: - extends: - - .intel-common-test - - .intel-rules - -## ANV only -# 15; 10 i5 boards + 5 i7 boards (2023-01-17) -.anv-tgl-test: - extends: - - .anv-test - variables: - DEVICE_TYPE: asus-cx9400-volteer - GPU_VERSION: anv-tgl - FDO_CI_CONCURRENT: 9 - RUNNER_TAG: mesa-ci-x86-64-lava-asus-cx9400-volteer +include: + - local: 'src/intel/ci/gitlab-ci-inc.yml' anv-jsl: extends: @@ -232,16 +59,6 @@ hasvk-hsw: variables: DEQP_FRACTION: 10 -.anv-angle-test: - extends: - - .anv-test - - .intel-rules # Note: Xorg uses iris, so depend on both GL and vulkan - variables: - VK_DRIVER: intel - USE_ANGLE: 1 - # ANGLE requires X11 running for some reason. - HWCI_START_XORG: 1 - anv-jsl-angle: extends: - .jsl-test @@ -275,77 +92,6 @@ anv-tgl-angle-full: DEQP_SUITE: anv-tgl-angle-full JOB_TIMEOUT: 60 -## Iris only -# 5 boards -.iris-apl-test: - extends: - - .iris-test - variables: - DEVICE_TYPE: asus-C523NA-A20057-coral - GPU_VERSION: iris-apl - RUNNER_TAG: mesa-ci-x86-64-lava-asus-C523NA-A20057-coral - FDO_CI_CONCURRENT: 5 - -# 4 boards -.iris-glk-test: - extends: - - .iris-test - variables: - DEVICE_TYPE: hp-x360-12b-ca0010nr-n4020-octopus - GPU_VERSION: iris-glk - RUNNER_TAG: mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus - FDO_CI_CONCURRENT: 3 - -# 5 boards, manual for now due to the GPU being occasionally stuck -.iris-amly-test: - extends: - - .iris-test - - .iris-manual-rules - variables: - DEVICE_TYPE: asus-C433TA-AJ0005-rammus - GPU_VERSION: iris-amly - RUNNER_TAG: mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus - FDO_CI_CONCURRENT: 5 - -# 7 boards -.iris-kbl-test: - extends: - - .iris-test - variables: - DEVICE_TYPE: hp-x360-14-G1-sona - GPU_VERSION: iris-kbl - RUNNER_TAG: mesa-ci-x86-64-lava-hp-x360-14-G1-sona - FDO_CI_CONCURRENT: 9 - -# 5 boards -.iris-whl-test: - extends: - - .iris-test - variables: - DEVICE_TYPE: dell-latitude-5400-8665U-sarien - GPU_VERSION: iris-whl - RUNNER_TAG: mesa-ci-x86-64-lava-dell-latitude-5400-8665U-sarien - FDO_CI_CONCURRENT: 9 - -# 5 boards -.iris-cml-test: - extends: - - .iris-test - - .iris-manual-rules # Devices have too often network problems and fail to boot. - variables: - DEVICE_TYPE: asus-C436FA-Flip-hatch - GPU_VERSION: iris-cml - RUNNER_TAG: mesa-ci-x86-64-lava-asus-C436FA-flip-hatch - FDO_CI_CONCURRENT: 9 - -# 8 boards -.jsl-test: - variables: - DEVICE_TYPE: acer-cb317-1h-c3z6-dedede - GPU_VERSION: iris-jsl - RUNNER_TAG: mesa-ci-x86-64-lava-acer-cb317-1h-c3z6-dedede - FDO_CI_CONCURRENT: 3 - iris-apl-deqp: extends: - .iris-apl-test @@ -393,13 +139,6 @@ iris-kbl-deqp: DEQP_SUITE: iris-kbl parallel: 3 -.iris-whl-deqp: - extends: - - .iris-whl-test - variables: - DEQP_SUITE: iris-whl - parallel: 4 - iris-cml-deqp: extends: - .iris-cml-test @@ -436,16 +175,6 @@ iris-kbl-piglit: PIGLIT_PLATFORM: mixed_glx_egl PIGLIT_PROFILES: gpu -.iris-traces: - extends: - - .lava-traces-base - variables: - EGL_PLATFORM: surfaceless - PIGLIT_REPLAY_DEVICE_NAME: "gl-${GPU_VERSION}" - PIGLIT_RESULTS: "${GPU_VERSION}-${PIGLIT_PROFILES}" - PIGLIT_REPLAY_DESCRIPTION_FILE: "/install/traces-iris.yml" - PIGLIT_REPLAY_EXTRA_ARGS: --keep-image - iris-apl-traces: variables: GPU_VERSION: intel-apl @@ -474,13 +203,6 @@ iris-kbl-traces: - .iris-kbl-test - .iris-traces -.iris-whl-traces: - variables: - GPU_VERSION: intel-whl - extends: - - .iris-whl-test - - .iris-traces - iris-cml-traces: variables: GPU_VERSION: intel-cml @@ -488,27 +210,6 @@ iris-cml-traces: - .iris-cml-test - .iris-traces -.profile-traces: - extends: - - .iris-traces - - .iris-rules-performance - variables: - PIGLIT_REPLAY_SUBCOMMAND: "profile" - PIGLIT_REPLAY_EXTRA_ARGS: "--db-path ${CI_PROJECT_DIR}/replayer-db/" - # More than this can hit OOM due to BOs leaked during the replay of the last frame - PIGLIT_REPLAY_LOOP_TIMES: 150 - # We don't want for more than one workload to be submitted to the GPU at a time - FDO_CI_CONCURRENT: 1 - # Piglit is very sparse in its status output and downloads of big traces can take a while - DEVICE_HANGING_TIMEOUT_SEC: 600 - # So we aren't capped by VSync by the X server - EGL_PLATFORM: surfaceless - GIT_STRATEGY: none - HWCI_FREQ_MAX: "true" - LAVA_TAGS: "cbg-0" - # Ensure that we are using the release build artifact - S3_ARTIFACT_NAME: mesa-x86_64-default-release - iris-apl-traces-performance: extends: - .iris-apl-test @@ -537,35 +238,6 @@ iris-kbl-traces-performance: variables: GPU_VERSION: intel-kbl -.iris-whl-traces-performance: - extends: - - .iris-whl-test - - .profile-traces - variables: - GPU_VERSION: intel-whl - -.iris-cml-traces-performance: - extends: - - .iris-cml-test - - .profile-traces - variables: - GPU_VERSION: intel-cml - -## Intel (anv + iris) -.intel-tgl-test: - extends: - - .anv-tgl-test - - .intel-test - variables: - GPU_VERSION: intel-tgl - -.intel-whl-test: - extends: - - .iris-whl-test - - .intel-test - variables: - GPU_VERSION: intel-whl - intel-tgl-skqp: extends: - .intel-tgl-test @@ -573,11 +245,3 @@ intel-tgl-skqp: DEQP_SUITE: intel-tgl-skqp VK_DRIVER: intel HWCI_START_XORG: 1 - -.intel-whl-skqp: - extends: - - .intel-whl-test - variables: - DEQP_SUITE: intel-whl-skqp - VK_DRIVER: intel - HWCI_START_XORG: 1 diff --git a/src/microsoft/ci/gitlab-ci-inc.yml b/src/microsoft/ci/gitlab-ci-inc.yml new file mode 100644 index 00000000000..918e558f1b4 --- /dev/null +++ b/src/microsoft/ci/gitlab-ci-inc.yml @@ -0,0 +1,68 @@ +.windows-docker-tags: + tags: + - windows + - docker + - "2022" + - mesa + +.windows-shell-tags: + tags: + - windows + - shell + - "2022" + - mesa + + +# Unfortunately YAML doesn't let us concatenate arrays, so we have to do the +# rules duplication manually +.windows-build-rules: + rules: + - !reference [.microsoft-farm-rules, rules] + - !reference [.zink-common-rules, rules] + - !reference [.vulkan-rules, rules] + - !reference [.softpipe-rules, rules] + - !reference [.lavapipe-rules, rules] + - changes: &d3d12_file_list + - src/gallium/drivers/d3d12/**/* + - src/gallium/frontends/wgl/* + - src/gallium/winsys/d3d12/wgl/* + - src/gallium/targets/libgl-gdi/* + - src/gallium/targets/libgl-d3d12/* + when: on_success + - changes: + - src/microsoft/**/* + - src/gallium/frontends/va/* + - src/gallium/targets/va/* + when: on_success + - !reference [.radv-rules, rules] + +.glon12-test-rules: + rules: + - !reference [.microsoft-farm-rules, rules] + - !reference [.gl-rules, rules] + - changes: *d3d12_file_list + when: on_success + - changes: + - src/microsoft/compiler/* + when: on_success + +.spirv2dxil-test-rules: + rules: + - !reference [.microsoft-farm-rules, rules] + - !reference [.core-rules, rules] + - changes: &spirv2dxil_file_list + - src/microsoft/ci/* + - src/microsoft/compiler/* + - src/microsoft/spirv_to_dxil/* + when: on_success + +.dozen-test-rules: + rules: + - !reference [.microsoft-farm-rules, rules] + - !reference [.vulkan-rules, rules] + - changes: + *spirv2dxil_file_list + when: on_success + - changes: + - src/microsoft/vulkan/* + when: on_success diff --git a/src/microsoft/ci/gitlab-ci.yml b/src/microsoft/ci/gitlab-ci.yml index 041d7eaf169..b2c60cd10eb 100644 --- a/src/microsoft/ci/gitlab-ci.yml +++ b/src/microsoft/ci/gitlab-ci.yml @@ -1,72 +1,5 @@ -.windows-docker-tags: - tags: - - windows - - docker - - "2022" - - mesa - -.windows-shell-tags: - tags: - - windows - - shell - - "2022" - - mesa - - -# Unfortunately YAML doesn't let us concatenate arrays, so we have to do the -# rules duplication manually -.windows-build-rules: - rules: - - !reference [.microsoft-farm-rules, rules] - - !reference [.zink-common-rules, rules] - - !reference [.vulkan-rules, rules] - - !reference [.softpipe-rules, rules] - - !reference [.lavapipe-rules, rules] - - changes: &d3d12_file_list - - src/gallium/drivers/d3d12/**/* - - src/gallium/frontends/wgl/* - - src/gallium/winsys/d3d12/wgl/* - - src/gallium/targets/libgl-gdi/* - - src/gallium/targets/libgl-d3d12/* - when: on_success - - changes: - - src/microsoft/**/* - - src/gallium/frontends/va/* - - src/gallium/targets/va/* - when: on_success - - !reference [.radv-rules, rules] - -.glon12-test-rules: - rules: - - !reference [.microsoft-farm-rules, rules] - - !reference [.gl-rules, rules] - - changes: *d3d12_file_list - when: on_success - - changes: - - src/microsoft/compiler/* - when: on_success - -.spirv2dxil-test-rules: - rules: - - !reference [.microsoft-farm-rules, rules] - - !reference [.core-rules, rules] - - changes: &spirv2dxil_file_list - - src/microsoft/ci/* - - src/microsoft/compiler/* - - src/microsoft/spirv_to_dxil/* - when: on_success - -.dozen-test-rules: - rules: - - !reference [.microsoft-farm-rules, rules] - - !reference [.vulkan-rules, rules] - - changes: - *spirv2dxil_file_list - when: on_success - - changes: - - src/microsoft/vulkan/* - when: on_success - +include: + - local: 'src/microsoft/ci/gitlab-ci-inc.yml' test-spirv2dxil-windows: extends: