Reduce Unix CI matrix and improve compiler caching - #95
Open
jdumas wants to merge 14 commits into
Open
Conversation
jdumas
force-pushed
the
ci/reduce-unix-build-matrix
branch
2 times, most recently
from
September 8, 2026 19:00
befee1f to
27fdf2e
Compare
jdumas
force-pushed
the
ci/reduce-unix-build-matrix
branch
from
September 9, 2026 04:40
27fdf2e to
a5e436b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
SSE2on Intel andNEONon ARM)LAGRANGE_LIMIT_PARALLELISMpools and a Linux prebuild to isolate Embree compilation and linkingLAGRANGE_LIMIT_GITHUB_ACTIONS_PARALLELISMmainfor reuse by pull requestsRelated Issue
N/A
Motivation and Context
The current Cartesian product creates 18 Unix builds. Recent job logs show that approximately 99.4% of compiler calls are cacheable, but jobs restore no cache and get effectively zero hits. The matrix produces enough large archives to churn through the Actions cache allowance.
The explicit matrix cuts the Unix job count in half while preserving the required compiler, configuration, architecture, and sanitizer coverage. Reducing the number of cache keys and enforcing cache cleanup should improve reuse within a pull request. Push builds on
mainseed caches that new pull requests are allowed to restore.How Has This Been Tested?
actionlint -ignore 'shellcheck reported issue' .github/workflows/continuous.yamlgit diff --checkNEONhas 58 kernel compile edges versus 98 with the previousNONE/NEON2X settingThe remaining shellcheck findings reported without the ignore flag are pre-existing PowerShell/shell quoting findings outside this change.
Types of changes
Checklist