Commit 6bc35c00 authored by Emma Anholt's avatar Emma Anholt Committed by Marge Bot
Browse files

ci/deqp: Allow specifying the caselist fraction separate from CI_NODE_INDEX.



To increase our VK coverage on a630, we want to have two jobs in parallel,
but we still can't hit full coverage so we need the fractional setting to
be separate from gitlab CI's flags for setting up parallel jobs.
Reviewed-by: Tomeu Vizoso's avatarTomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <!6971>
parent 2998a0b0
......@@ -1288,8 +1288,7 @@ arm64_a630_vk:
extends: arm64_a630_gles2
variables:
DEQP_VER: vk
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 50
DEQP_FRACTION: 50
VK_DRIVER: freedreno
# Force binning in the main run, which makes sure we render at
# least 2 bins. This is the path that impacts the most different
......@@ -1304,8 +1303,7 @@ arm64_a630_vk_sysmem:
extends:
- arm64_a630_vk
variables:
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 10
DEQP_FRACTION: 10
DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*"
DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt
TU_DEBUG: sysmem
......@@ -1359,8 +1357,7 @@ arm64_a306_gles3:
variables:
DEQP_VER: gles3
DEQP_PARALLEL: 1
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 25
DEQP_FRACTION: 25
# 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).
......@@ -1398,16 +1395,14 @@ arm64_a530_gles3:
variables:
DEQP_VER: gles3
DEQP_PARALLEL: 1
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 40
DEQP_FRACTION: 40
arm64_a530_gles31:
extends:
- arm64_a530_gles3
variables:
DEQP_VER: gles31
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 10
DEQP_FRACTION: 10
# RADV CI
.test-radv:
......
......@@ -11,8 +11,7 @@ EXIT=0
if ! env \
DEQP_RESULTS_DIR=results/gmem \
DEQP_VER=gles31 \
CI_NODE_INDEX=1 \
CI_NODE_TOTAL=5 \
DEQP_FRACTION=5 \
FD_MESA_DEBUG=nobypass \
/install/deqp-runner.sh; then
EXIT=1
......@@ -22,8 +21,7 @@ fi
if ! env \
DEQP_RESULTS_DIR=results/bypass \
DEQP_VER=gles31 \
CI_NODE_INDEX=1 \
CI_NODE_TOTAL=5 \
DEQP_FRACTION=5 \
FD_MESA_DEBUG=nogmem \
DEQP_EXPECTED_FAILS=deqp-freedreno-a630-bypass-fails.txt \
/install/deqp-runner.sh; then
......
......@@ -31,6 +31,7 @@ for var in \
DEQP_CONFIG \
DEQP_EXPECTED_FAILS \
DEQP_EXPECTED_RENDERER \
DEQP_FRACTION \
DEQP_HEIGHT \
DEQP_NO_SAVE_RESULTS \
DEQP_FLAKES \
......
......@@ -57,8 +57,15 @@ else
SUITE=KHR
fi
# If the job is parallel, take the corresponding fraction of the caselist.
# Note: N~M is a gnu sed extension to match every nth line (first line is #1).
# If the caselist is too long to run in a reasonable amount of time, let the job
# specify what fraction (1/n) of the caselist we should run. Note: N~M is a gnu
# sed extension to match every nth line (first line is #1).
if [ -n "$DEQP_FRACTION" ]; then
sed -ni 1~$DEQP_FRACTION"p" /tmp/case-list.txt
fi
# If the job is parallel at the gitab job level, take the corresponding fraction
# of the caselist.
if [ -n "$CI_NODE_INDEX" ]; then
sed -ni $CI_NODE_INDEX~$CI_NODE_TOTAL"p" /tmp/case-list.txt
fi
......
......@@ -111,8 +111,7 @@ no ``parallel`` field set and:
.. code-block:: yaml
variables:
CI_NODE_INDEX: 1
CI_NODE_TOTAL: 10
DEQP_FRACTION: 10
to just run 1/10th of the test list.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment