From 886fd599519c570077d3f778bc6d0170f126ab82 Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Mon, 16 Mar 2026 12:10:49 -0700 Subject: [PATCH] ci/lavapipe: Use anholt's new GPU trace snapshot comparison tool. The new tool has much better image diffing presentation (thanks to Danilo's work on turnip's private trace CI), better performance, flake checking within a single run, parallelized downloads along with replays, and ability to cache downloaded files to improve runtime, and system monitoring (for debugging OOM-related slowdowns). Part-of: --- .../frontends/lavapipe/ci/gitlab-ci.yml | 21 ++++++---- .../lavapipe/ci/traces-lavapipe.toml | 40 +++++++++++++++++++ .../frontends/lavapipe/ci/traces-lavapipe.yml | 10 ----- 3 files changed, 54 insertions(+), 17 deletions(-) create mode 100644 src/gallium/frontends/lavapipe/ci/traces-lavapipe.toml delete mode 100644 src/gallium/frontends/lavapipe/ci/traces-lavapipe.yml diff --git a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml index 4165ca49728..0a168c72b99 100644 --- a/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml +++ b/src/gallium/frontends/lavapipe/ci/gitlab-ci.yml @@ -55,16 +55,23 @@ lavapipe-vkd3d: GPU_VERSION: lvp script: install/vkd3d-runner.sh -# Disabled due to only running a single trace which was using old Wine. -.lavapipe-traces: - timeout: 15m +lavapipe-traces: variables: - PIGLIT_TRACES_FILE: traces-lavapipe.yml - PIGLIT_REPLAY_DEVICE_NAME: "vk-lvp" + REPLAY_CONFIG: traces-lavapipe.toml + GPU_VERSION: lvp extends: - - .piglit-traces-test + - .test-vkd3d-proton + - .traces-test + - .test-wine - .lavapipe-test - - .lavapipe-manual-rules + - .lavapipe-rules + script: | + export LD_LIBRARY_PATH="$CI_PROJECT_DIR/install/lib" + export LIBGL_DRIVERS_PATH="$CI_PROJECT_DIR/install/lib/dri" + section_start weston "weston: prepare" + . "$CI_PROJECT_DIR/install/common/weston.sh" + section_end weston + $HWCI_TEST_SCRIPT android-angle-lavapipe: variables: diff --git a/src/gallium/frontends/lavapipe/ci/traces-lavapipe.toml b/src/gallium/frontends/lavapipe/ci/traces-lavapipe.toml new file mode 100644 index 00000000000..53a7cba98e3 --- /dev/null +++ b/src/gallium/frontends/lavapipe/ci/traces-lavapipe.toml @@ -0,0 +1,40 @@ +[traces_db] +download_url = "https://s3.freedesktop.org/mesa-tracie-public/" + +[[traces]] +path = "unigine/sanctuary-d3d9.trace-dxgi" +# This trace is not trimmed to a single frame, so it takes too long to render. + +[[traces]] +path = "unigine/tropics-d3d9.trace-dxgi" +# This trace is not trimmed to a single frame, so it takes too long to render. + +# Note that all the unigine/heaven traces crash when using --loops= +[[traces]] +path = "unigine/heaven-scene1-low-d3d9.trace-dxgi" +nonloopable = true +devices = { lvp = { checksum = "555efa5bcc89a638ed58df874aa13d0727bc7e798bfd9b42b2aa1854e3447688" } } + +[[traces]] +path = "unigine/heaven-scene1-low-d3d11.trace-dxgi" +nonloopable = true +devices = { lvp = { checksum = "677a16bd71e309d6de1669c23dff262392da52252e4728b819e887dfedabec89" } } + +[[traces]] +path = "unigine/heaven-scene1-ultra-d3d11.trace-dxgi" +nonloopable = true +devices = { lvp = { checksum = "348c4c0edefb518a373fd971c64d359730731367133413ab91beebaac273ee71" } } + +[[traces]] +path = "unigine/heaven-scene12-low-d3d9.trace-dxgi" +nonloopable = true +devices = { lvp = { checksum = "9f6586cd18b7add22d8d17b283b03e0e669b5cbcb3199d2cc655f5dde0d753df" } } + +[[traces]] +path = "unigine/heaven-scene12-ultra-d3d11.trace-dxgi" +nonloopable = true +devices = { lvp = { checksum = "95c5d1f7d1fae05f5e535f445f6f5b2b4b6efa9cafb717edfb38acbf4cb97134" } } + +[[traces]] +path = "./LunarG-VulkanSamples/amd/polaris10/Hologram:-w:640:-h:480.gfxr" +devices = { lvp = { checksum = "bb58e7dda75590080b338911de972168933155c6efa9fab8b088d139b4d3ae6e" } } diff --git a/src/gallium/frontends/lavapipe/ci/traces-lavapipe.yml b/src/gallium/frontends/lavapipe/ci/traces-lavapipe.yml deleted file mode 100644 index 24dc5a00894..00000000000 --- a/src/gallium/frontends/lavapipe/ci/traces-lavapipe.yml +++ /dev/null @@ -1,10 +0,0 @@ -%YAML 1.2 ---- -traces-db: - download-url: "https://s3.freedesktop.org/mesa-tracie-public/" - -traces: - unigine/sanctuary-d3d9.trace-dxgi: - vk-lvp: - label: [slow] - checksum: b5b89fa37cd7ede84bdbef5953407390