[PATCH] gitlab-ci: upgrade machine type of Linux runners

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



With the recent effort to make the test suite free of memory leaks we
now run a lot more of test suites with the leak-sanitizer enabled. While
we were originally only executing around 23000 tests, we're now at 30000
tests. Naturally, this has a significant impact on the runtime of such a
test run.

Naturally, this impact can also be felt for our leak-checking CI jobs.
While macOS used to be the slowest-executing job on GitLab CI with ~15
minutes of runtime, nowadays it is our leak checks which take around 45
to 55 minutes.

Our Linux runners for GitLab CI are untagged, which means that they
default to the "small" machine type with two CPU cores [1]. Upgrade
these to the "medium" runner, which provide four CPU cores and which
should thus provide a noticeable speedup.

In theory, we could upgrade to an ever larger machine than that. The
official mirror [2] has an Ultimate license, so we could get up to 128
cores. But anybody running a fork of the Git project without such a
license wouldn't be able to use those beefier machines and thus their
pipelines would fail.

[1]: https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html
[2]: https://gitlab.com/git-scm/git/

Signed-off-by: Patrick Steinhardt <ps@xxxxxx>
---

A test run can be found at [1]. This change decreases the runtime by
about 20 minutes to 25 - 28 minutes in total. I'd be open to adjust this
to use "large" runners, but as mentioned in the commit message that
would cause problems when somebody hosts their own Git repository at
GitLab. Is this something we care about?

Patrick

[1]: https://gitlab.com/gitlab-org/git/-/merge_requests/215

 .gitlab-ci.yml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 80b1668ebe..4abfbc3e20 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,6 +9,8 @@ workflow:
 
 test:linux:
   image: $image
+  tags:
+    - saas-linux-medium-amd64
   variables:
     CUSTOM_PATH: "/custom"
   before_script:

base-commit: 3fb745257b30a643ee78c9a7c52ab107c82e4745
-- 
2.46.0.551.gc5ee8f2d1c.dirty





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux