Skip to content

perf(ci): build container platforms on separate native runners - #2386

Open
adityathebe wants to merge 1 commit into
mainfrom
ci/native-container-builds
Open

perf(ci): build container platforms on separate native runners#2386
adityathebe wants to merge 1 commit into
mainfrom
ci/native-container-builds

Conversation

@adityathebe

Copy link
Copy Markdown
Member

PR amd64 and arm64 compilations shared one runner and each took about 16m44s in the sampled run.

  • Build both complete production images on separate native amd64/arm64 runners, matching release runner types.
  • Preserve the existing build check as an aggregate that requires both platforms to succeed, including rejecting skipped or cancelled results.
  • This trades duplicated runner setup for less resource contention; it does not change release publishing or add image pushes.

The two PR platform compilations competed for the same runner and each took over sixteen minutes.

Run amd64 and arm64 builds independently on native runners, retaining both production images. Keep the existing build check as an aggregate that fails unless both platform jobs succeed.
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Benchstat

Base: 917781fadfc7ccb16973cab22d725b06732e4a4b
Head: 56ef3c4261720e405dca837783a25c44a5d781c7

✅ 1 improvement(s)
Benchmark Base Head Change p-value
RunTemplateBool/smallEnv-4 11.16µ 11.00µ -1.50% 0.009
Full benchstat output
goos: linux
goarch: amd64
pkg: github.com/flanksource/config-db/bench
cpu: AMD EPYC 9V74 80-Core Processor                
                                         │ bench-base.txt │           bench-head.txt           │
                                         │     sec/op     │    sec/op     vs base              │
LocationFilter/smallEnv-4                    18.48µ ± 22%   20.89µ ± 10%       ~ (p=0.180 n=6)
LocationFilter/largeEnv-4                    45.68µ ± 12%   45.76µ ±  1%       ~ (p=0.937 n=6)
RunTemplateBool/smallEnv-4                   11.16µ ±  2%   11.00µ ±  1%  -1.50% (p=0.009 n=6)
RunTemplateBool/largeEnv-4                   20.35µ ±  2%   20.24µ ±  1%       ~ (p=0.485 n=6)
BenchSaveResultsSeed/N=1000-4                 3.408 ±  4%    3.407 ±  4%       ~ (p=0.589 n=6)
BenchSaveResultsUpdateUnchanged/N=1000-4      2.922 ±  2%    2.925 ±  1%       ~ (p=0.818 n=6)
BenchSaveResultsUpdateChanged/N=1000-4        6.988 ±  3%    6.937 ±  2%       ~ (p=0.240 n=6)
geomean                                      3.885m         3.939m        +1.40%

                                         │ bench-base.txt │            bench-head.txt            │
                                         │      B/op      │     B/op      vs base                │
LocationFilter/smallEnv-4                    15.76Ki ± 0%   15.76Ki ± 0%       ~ (p=1.000 n=6) ¹
LocationFilter/largeEnv-4                    21.17Ki ± 0%   21.17Ki ± 0%       ~ (p=0.545 n=6)
RunTemplateBool/smallEnv-4                   9.149Ki ± 0%   9.149Ki ± 0%       ~ (p=1.000 n=6) ¹
RunTemplateBool/largeEnv-4                   10.95Ki ± 0%   10.95Ki ± 0%       ~ (p=1.000 n=6) ¹
BenchSaveResultsSeed/N=1000-4                1.295Gi ± 0%   1.295Gi ± 0%       ~ (p=0.937 n=6)
BenchSaveResultsUpdateUnchanged/N=1000-4     32.02Mi ± 0%   32.02Mi ± 0%       ~ (p=0.818 n=6)
BenchSaveResultsUpdateChanged/N=1000-4       796.7Mi ± 1%   796.2Mi ± 1%       ~ (p=0.699 n=6)
geomean                                      1.004Mi        1.004Mi       -0.01%
¹ all samples are equal

                                         │ bench-base.txt │            bench-head.txt            │
                                         │   allocs/op    │  allocs/op    vs base                │
LocationFilter/smallEnv-4                     300.0 ±  0%    300.0 ±  0%       ~ (p=1.000 n=6) ¹
LocationFilter/largeEnv-4                     544.0 ±  0%    544.0 ±  0%       ~ (p=1.000 n=6) ¹
RunTemplateBool/smallEnv-4                    238.0 ±  0%    238.0 ±  0%       ~ (p=1.000 n=6) ¹
RunTemplateBool/largeEnv-4                    319.0 ±  0%    319.0 ±  0%       ~ (p=1.000 n=6) ¹
BenchSaveResultsSeed/N=1000-4                741.7k ±  0%   741.7k ±  0%       ~ (p=0.457 n=6)
BenchSaveResultsUpdateUnchanged/N=1000-4     405.9k ±  0%   405.9k ±  0%       ~ (p=0.974 n=6)
BenchSaveResultsUpdateChanged/N=1000-4       992.1k ± 12%   992.0k ± 12%       ~ (p=0.589 n=6)
geomean                                      8.676k         8.676k        +0.00%
¹ all samples are equal

                                         │ bench-base.txt │           bench-head.txt           │
                                         │      MB/s      │    MB/s     vs base                │
BenchSaveResultsSeed/N=1000-4                0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
BenchSaveResultsUpdateUnchanged/N=1000-4     0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
BenchSaveResultsUpdateChanged/N=1000-4       0.000 ± 0%     0.000 ± 0%       ~ (p=1.000 n=6) ¹
geomean                                                 ²               +0.00%               ²
¹ all samples are equal
² summaries must be >0 to compute geomean

@coderabbitai

coderabbitai Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

Next included review available in 57 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 90e121fb-c285-4b5e-945c-010796b86d22

📥 Commits

Reviewing files that changed from the base of the PR and between 917781f and 56ef3c4.

📒 Files selected for processing (1)
  • .github/workflows/build.yml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Gavel results

Gavel exited with code 1.

View full results

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant