From 64e0501683fd31d1e8a364901b591861cdb21117 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Mon, 18 Feb 2019 14:42:15 +0100 Subject: [PATCH] ci: Limit number of processors and which parts of the CI are run Reduce the number of test processes run by the CI to 1/8 of the number of available processors. Normally only run the build and sanity checks, and only run the test suites for merge requests. Also fix some string marker that seems to make problems. Signed-off-by: Gert Wollny Reviewed-by: Gurchetan Singh Signed-off-by: Dave Airlie --- ci/.gitlab-ci.yml | 10 ++++++++++ ci/run_test_suite.sh | 2 +- ci/run_tests.sh | 6 +++--- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ci/.gitlab-ci.yml b/ci/.gitlab-ci.yml index 095e064..471f028 100644 --- a/ci/.gitlab-ci.yml +++ b/ci/.gitlab-ci.yml @@ -86,6 +86,8 @@ piglit - gl host: bash -c "/virglrenderer/ci/run_tests.sh --piglit-gl" 2>&1 | tee results/docker_test_log.txt - echo "\n\n" + only: + - merge_requests piglit - gles host: stage: test @@ -107,6 +109,8 @@ piglit - gles host: bash -c "/virglrenderer/ci/run_tests.sh --piglit-gles" 2>&1 | tee results/docker_test_log.txt - echo "\n\n" + only: + - merge_requests artifacts: when: always @@ -133,6 +137,8 @@ cts - gl host: bash -c "/virglrenderer/ci/run_tests.sh --deqp-gl" 2>&1 | tee results/docker_test_log.txt - echo "\n\n" + only: + - merge_requests artifacts: when: always @@ -159,6 +165,8 @@ cts - gles host: bash -c "/virglrenderer/ci/run_tests.sh --deqp-gles" 2>&1 | tee results/docker_test_log.txt - echo "\n\n" + only: + - merge_requests artifacts: when: always @@ -185,6 +193,8 @@ unreliable tests: bash -c "/virglrenderer/ci/run_tests.sh --deqp-gl-unreliable --deqp-gles-unreliable --piglit-gl-unreliable --piglit-gles-unreliable || true" 2>&1 | tee results/docker_test_log.txt - echo "\n\n" + only: + - merge_requests artifacts: when: always diff --git a/ci/run_test_suite.sh b/ci/run_test_suite.sh index 4c927e4..4e25379 100755 --- a/ci/run_test_suite.sh +++ b/ci/run_test_suite.sh @@ -7,7 +7,7 @@ trap "{ rm -f $TMP_TEST_FILE; }" EXIT TESTS="" BACKENDS="" -NUM_THREADS=$(expr $(expr $(nproc) + 2) / 3) +NUM_THREADS=${NUM_THREADS:-$(expr $(expr $(nproc) / 8) + 1)} COMPARE_BACKENDS=0 COMPARE_PREVIOUS=0 diff --git a/ci/run_tests.sh b/ci/run_tests.sh index 4c1cbfb..338534f 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -6,7 +6,7 @@ run_setup() # Let .gitlab-ci or local ci runner set # desired thread count - NUM_THREADS=${NUM_THREADS:-"$(nproc)"} + NUM_THREADS=${NUM_THREADS:-$(expr $(expr $(nproc) / 8) + 1)} export NUM_THREADS echo "Using $NUM_THREADS threads" @@ -17,10 +17,10 @@ run_setup() ccache -s # To prevent hitting assertions such as the below: - # sb/sb_sched.cpp:1207:schedule_alu: Assertion `!"unscheduled pending instructions"' failed. + # sb/sb_sched.cpp:1207:schedule_alu: Assertion '!"unscheduled pending instructions"' failed. export R600_DEBUG=nosb - # If render node, like /dev/dri/renderD128, hasn't been set + # If render node, like /dev/dri/renderD128, has not been set # or exists use softpipe instead of HW GPU. if [[ ! -c $RENDER_DEVICE ]]; then export SOFTWARE_ONLY=1