ci: suitespec riot venvs_per_job for gen_gitlab_config#15367
ci: suitespec riot venvs_per_job for gen_gitlab_config#15367brettlangdon merged 8 commits intomainfrom
Conversation
|
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 230 ± 8 ms. The average import time from base is: 236 ± 7 ms. The import time difference between this PR and base is: -6.6 ± 0.3 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate brettlangdon/venvs_per_job (84ba830) with baseline main (97b28b0) 📈 Performance Regressions (2 suites)📈 iastaspectsospath - 24/24✅ ospathbasename_aspectTime: ✅ 5.052µs (SLO: <10.000µs 📉 -49.5%) vs baseline: 📈 +17.1% Memory: ✅ 40.324MB (SLO: <41.000MB 🟡 -1.6%) vs baseline: +5.0% ✅ ospathbasename_noaspectTime: ✅ 1.076µs (SLO: <10.000µs 📉 -89.2%) vs baseline: ~same Memory: ✅ 40.324MB (SLO: <41.000MB 🟡 -1.6%) vs baseline: +4.8% ✅ ospathjoin_aspectTime: ✅ 6.124µs (SLO: <10.000µs 📉 -38.8%) vs baseline: +0.3% Memory: ✅ 40.344MB (SLO: <41.000MB 🟡 -1.6%) vs baseline: +5.0% ✅ ospathjoin_noaspectTime: ✅ 2.271µs (SLO: <10.000µs 📉 -77.3%) vs baseline: -0.4% Memory: ✅ 40.226MB (SLO: <41.000MB 🟡 -1.9%) vs baseline: +4.6% ✅ ospathnormcase_aspectTime: ✅ 3.507µs (SLO: <10.000µs 📉 -64.9%) vs baseline: -1.9% Memory: ✅ 40.305MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +5.1% ✅ ospathnormcase_noaspectTime: ✅ 0.576µs (SLO: <10.000µs 📉 -94.2%) vs baseline: +2.2% Memory: ✅ 40.187MB (SLO: <41.000MB 🟡 -2.0%) vs baseline: +4.6% ✅ ospathsplit_aspectTime: ✅ 4.925µs (SLO: <10.000µs 📉 -50.7%) vs baseline: ~same Memory: ✅ 40.206MB (SLO: <41.000MB 🟡 -1.9%) vs baseline: +4.6% ✅ ospathsplit_noaspectTime: ✅ 1.601µs (SLO: <10.000µs 📉 -84.0%) vs baseline: +0.5% Memory: ✅ 40.403MB (SLO: <41.000MB 🟡 -1.5%) vs baseline: +5.2% ✅ ospathsplitdrive_aspectTime: ✅ 3.656µs (SLO: <10.000µs 📉 -63.4%) vs baseline: -0.9% Memory: ✅ 40.423MB (SLO: <41.000MB 🟡 -1.4%) vs baseline: +5.2% ✅ ospathsplitdrive_noaspectTime: ✅ 0.696µs (SLO: <10.000µs 📉 -93.0%) vs baseline: -0.9% Memory: ✅ 40.167MB (SLO: <41.000MB -2.0%) vs baseline: +4.7% ✅ ospathsplitext_aspectTime: ✅ 4.551µs (SLO: <10.000µs 📉 -54.5%) vs baseline: +0.3% Memory: ✅ 40.285MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +4.9% ✅ ospathsplitext_noaspectTime: ✅ 1.378µs (SLO: <10.000µs 📉 -86.2%) vs baseline: -0.2% Memory: ✅ 40.285MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +5.0% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 3.378µs (SLO: <20.000µs 📉 -83.1%) vs baseline: 📈 +14.4% Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.9% ✅ 1-count-metrics-100-timesTime: ✅ 201.113µs (SLO: <220.000µs -8.6%) vs baseline: +0.1% Memory: ✅ 34.819MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.8% ✅ 1-distribution-metric-1-timesTime: ✅ 3.270µs (SLO: <20.000µs 📉 -83.7%) vs baseline: ~same Memory: ✅ 34.878MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.6% ✅ 1-distribution-metrics-100-timesTime: ✅ 213.219µs (SLO: <230.000µs -7.3%) vs baseline: -0.8% Memory: ✅ 34.918MB (SLO: <35.500MB 🟡 -1.6%) vs baseline: +4.7% ✅ 1-gauge-metric-1-timesTime: ✅ 2.184µs (SLO: <20.000µs 📉 -89.1%) vs baseline: -0.3% Memory: ✅ 34.878MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.9% ✅ 1-gauge-metrics-100-timesTime: ✅ 137.636µs (SLO: <150.000µs -8.2%) vs baseline: +0.8% Memory: ✅ 34.937MB (SLO: <35.500MB 🟡 -1.6%) vs baseline: +5.4% ✅ 1-rate-metric-1-timesTime: ✅ 3.059µs (SLO: <20.000µs 📉 -84.7%) vs baseline: -0.5% Memory: ✅ 34.957MB (SLO: <35.500MB 🟡 -1.5%) vs baseline: +4.7% ✅ 1-rate-metrics-100-timesTime: ✅ 213.477µs (SLO: <250.000µs 📉 -14.6%) vs baseline: +0.3% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +4.9% ✅ 100-count-metrics-100-timesTime: ✅ 20.362ms (SLO: <22.000ms -7.4%) vs baseline: +0.8% Memory: ✅ 34.957MB (SLO: <35.500MB 🟡 -1.5%) vs baseline: +5.2% ✅ 100-distribution-metrics-100-timesTime: ✅ 2.274ms (SLO: <2.300ms 🟡 -1.1%) vs baseline: +1.3% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +4.9% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.410ms (SLO: <1.550ms -9.1%) vs baseline: +0.6% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +5.1% ✅ 100-rate-metrics-100-timesTime: ✅ 2.225ms (SLO: <2.550ms 📉 -12.8%) vs baseline: +1.5% Memory: ✅ 34.937MB (SLO: <35.500MB 🟡 -1.6%) vs baseline: +5.1% ✅ flush-1-metricTime: ✅ 4.467µs (SLO: <20.000µs 📉 -77.7%) vs baseline: +0.1% Memory: ✅ 35.291MB (SLO: <35.500MB 🟡 -0.6%) vs baseline: +5.6% ✅ flush-100-metricsTime: ✅ 173.458µs (SLO: <250.000µs 📉 -30.6%) vs baseline: ~same Memory: ✅ 35.271MB (SLO: <35.500MB 🟡 -0.6%) vs baseline: +4.8% ✅ flush-1000-metricsTime: ✅ 2.188ms (SLO: <2.500ms 📉 -12.5%) vs baseline: -0.1% Memory: ✅ 36.137MB (SLO: <36.500MB 🟡 -1.0%) vs baseline: +5.3% 🟡 Near SLO Breach (18 suites)🟡 coreapiscenario - 10/10 (1 unstable)
|
Description
Adds a new
venvs_per_joboption to suitespec so we can dynamically determine how many parallel GitLab jobs to create based on the number of riot venvs that exist instead of being a set static number.This should help when we scale the testing matrix at any point, and make it more predictable for total job runtime (e.g. 60 seconds per venv, if we run 3 venvs per job, then each job should be only 3 minutes long).
Testing
Risks
Additional Notes