From 641b42b2e82086775619bd15854ddb5b80311b49 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Thu, 28 Dec 2023 14:22:16 -0600 Subject: [PATCH] chore(ci): Speed up critical path of CI We've decided to try using some of our funding to speed up CI. kbknapp has experience with buildjet in the past which allows us to keep our Actions and switch out our runners. As we are charged for `num_cores * time`, increasing core counts could decrease time, both helping us and keeping costs down. I chose 8 cores (an upgrade over `ubuntu-latest`s 2 cores) as kbknapp knew someone who benchmarked things for Rust/Python and found that a good fit. I only switched a subset of jobs over to buildjet to focus on jobs where most of the time is spent on highly parallelizable operations. Buildjet dropped our Linux test jobs from 8-9min to 2-3min. The checks and UI-test jobs only improved by 30s-1min each, so I left them out. We can iterate as we go. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3f8ef5c2c4f..3c74b586d74 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,7 +31,7 @@ jobs: build: [linux, windows, mac, minimal, default, next] include: - build: linux - os: ubuntu-latest + os: buildjet-8vcpu-ubuntu-2204 rust: "stable" features: "full" - build: windows