-
Notifications
You must be signed in to change notification settings - Fork 469
ci: add microbench SLO change detection, fix bench interruptible policy #15417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 212 ± 3 ms. The average import time from base is: 214 ± 2 ms. The import time difference between this PR and base is: -2.4 ± 0.1 ms. Import time breakdownThe following import paths have shrunk:
|
0f4bc7f to
8f283e7
Compare
Performance SLOsComparing candidate augusto/apmsp-2373.update-slo-check (b5f4e6e) with baseline main (47afaf0) 📈 Performance Regressions (3 suites)📈 iastaspects - 118/118✅ add_aspectTime: ✅ 0.403µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.3% Memory: ✅ 40.108MB (SLO: <41.500MB -3.4%) vs baseline: +4.7% ✅ add_inplace_aspectTime: ✅ 0.406µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +0.5% Memory: ✅ 40.482MB (SLO: <41.500MB -2.5%) vs baseline: +5.8% ✅ add_inplace_noaspectTime: ✅ 0.322µs (SLO: <10.000µs 📉 -96.8%) vs baseline: -0.8% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +4.3% ✅ add_noaspectTime: ✅ 0.280µs (SLO: <10.000µs 📉 -97.2%) vs baseline: +0.3% Memory: ✅ 40.265MB (SLO: <41.500MB -3.0%) vs baseline: +5.1% ✅ bytearray_aspectTime: ✅ 1.349µs (SLO: <10.000µs 📉 -86.5%) vs baseline: ~same Memory: ✅ 40.265MB (SLO: <41.500MB -3.0%) vs baseline: +5.0% ✅ bytearray_extend_aspectTime: ✅ 1.505µs (SLO: <10.000µs 📉 -85.0%) vs baseline: -0.2% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.6% ✅ bytearray_extend_noaspectTime: ✅ 0.615µs (SLO: <10.000µs 📉 -93.9%) vs baseline: +0.5% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +5.1% ✅ bytearray_noaspectTime: ✅ 0.482µs (SLO: <10.000µs 📉 -95.2%) vs baseline: +0.6% Memory: ✅ 40.265MB (SLO: <41.500MB -3.0%) vs baseline: +4.8% ✅ bytes_aspectTime: ✅ 1.289µs (SLO: <10.000µs 📉 -87.1%) vs baseline: -0.2% Memory: ✅ 40.344MB (SLO: <41.500MB -2.8%) vs baseline: +5.5% ✅ bytes_noaspectTime: ✅ 0.498µs (SLO: <10.000µs 📉 -95.0%) vs baseline: +0.6% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +4.6% ✅ bytesio_aspectTime: ✅ 1.342µs (SLO: <10.000µs 📉 -86.6%) vs baseline: +2.6% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.5% ✅ bytesio_noaspectTime: ✅ 0.495µs (SLO: <10.000µs 📉 -95.1%) vs baseline: +0.6% Memory: ✅ 40.167MB (SLO: <41.500MB -3.2%) vs baseline: +5.0% ✅ capitalize_aspectTime: ✅ 0.732µs (SLO: <10.000µs 📉 -92.7%) vs baseline: -1.5% Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +3.9% ✅ capitalize_noaspectTime: ✅ 0.438µs (SLO: <10.000µs 📉 -95.6%) vs baseline: +0.7% Memory: ✅ 40.128MB (SLO: <41.500MB -3.3%) vs baseline: +4.2% ✅ casefold_aspectTime: ✅ 0.743µs (SLO: <10.000µs 📉 -92.6%) vs baseline: +1.2% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +4.5% ✅ casefold_noaspectTime: ✅ 0.373µs (SLO: <10.000µs 📉 -96.3%) vs baseline: ~same Memory: ✅ 40.324MB (SLO: <41.500MB -2.8%) vs baseline: +4.7% ✅ decode_aspectTime: ✅ 0.726µs (SLO: <10.000µs 📉 -92.7%) vs baseline: +0.3% Memory: ✅ 40.265MB (SLO: <41.500MB -3.0%) vs baseline: +4.1% ✅ decode_noaspectTime: ✅ 0.418µs (SLO: <10.000µs 📉 -95.8%) vs baseline: +0.1% Memory: ✅ 40.305MB (SLO: <41.500MB -2.9%) vs baseline: +5.5% ✅ encode_aspectTime: ✅ 0.712µs (SLO: <10.000µs 📉 -92.9%) vs baseline: -0.3% Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +3.9% ✅ encode_noaspectTime: ✅ 0.404µs (SLO: <10.000µs 📉 -96.0%) vs baseline: +1.1% Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +5.0% ✅ format_aspectTime: ✅ 3.434µs (SLO: <10.000µs 📉 -65.7%) vs baseline: +0.1% Memory: ✅ 40.305MB (SLO: <41.500MB -2.9%) vs baseline: +5.1% ✅ format_map_aspectTime: ✅ 3.574µs (SLO: <10.000µs 📉 -64.3%) vs baseline: -0.8% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +4.4% ✅ format_map_noaspectTime: ✅ 0.768µs (SLO: <10.000µs 📉 -92.3%) vs baseline: -0.1% Memory: ✅ 40.128MB (SLO: <41.500MB -3.3%) vs baseline: +4.7% ✅ format_noaspectTime: ✅ 0.593µs (SLO: <10.000µs 📉 -94.1%) vs baseline: -0.9% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +5.0% ✅ index_aspectTime: ✅ 0.359µs (SLO: <10.000µs 📉 -96.4%) vs baseline: +1.2% Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +4.6% ✅ index_noaspectTime: ✅ 0.277µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -1.8% Memory: ✅ 40.088MB (SLO: <41.500MB -3.4%) vs baseline: +4.7% ✅ join_aspectTime: ✅ 1.346µs (SLO: <10.000µs 📉 -86.5%) vs baseline: +1.2% Memory: ✅ 40.305MB (SLO: <41.500MB -2.9%) vs baseline: +5.1% ✅ join_noaspectTime: ✅ 0.492µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -0.3% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +4.6% ✅ ljust_aspectTime: ✅ 2.611µs (SLO: <20.000µs 📉 -86.9%) vs baseline: +0.5% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +5.0% ✅ ljust_noaspectTime: ✅ 0.405µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.3% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +4.7% ✅ lower_aspectTime: ✅ 2.289µs (SLO: <10.000µs 📉 -77.1%) vs baseline: +2.8% Memory: ✅ 40.305MB (SLO: <41.500MB -2.9%) vs baseline: +4.7% ✅ lower_noaspectTime: ✅ 0.368µs (SLO: <10.000µs 📉 -96.3%) vs baseline: ~same Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +5.3% ✅ lstrip_aspectTime: ✅ 2.239µs (SLO: <20.000µs 📉 -88.8%) vs baseline: -0.8% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +4.7% ✅ lstrip_noaspectTime: ✅ 0.378µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -1.3% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.6% ✅ modulo_aspectTime: ✅ 1.045µs (SLO: <10.000µs 📉 -89.6%) vs baseline: +4.4% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +3.8% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 1.553µs (SLO: <10.000µs 📉 -84.5%) vs baseline: -0.2% Memory: ✅ 40.108MB (SLO: <41.500MB -3.4%) vs baseline: +4.7% ✅ modulo_aspect_for_bytesTime: ✅ 0.980µs (SLO: <10.000µs 📉 -90.2%) vs baseline: +0.2% Memory: ✅ 40.265MB (SLO: <41.500MB -3.0%) vs baseline: +4.6% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 1.232µs (SLO: <10.000µs 📉 -87.7%) vs baseline: +0.8% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +4.9% ✅ modulo_noaspectTime: ✅ 0.627µs (SLO: <10.000µs 📉 -93.7%) vs baseline: -0.6% Memory: ✅ 40.069MB (SLO: <41.500MB -3.4%) vs baseline: +4.3% ✅ replace_aspectTime: ✅ 4.847µs (SLO: <10.000µs 📉 -51.5%) vs baseline: -2.0% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.6% ✅ replace_noaspectTime: ✅ 0.458µs (SLO: <10.000µs 📉 -95.4%) vs baseline: -1.0% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +5.0% ✅ repr_aspectTime: ✅ 0.902µs (SLO: <10.000µs 📉 -91.0%) vs baseline: -1.0% Memory: ✅ 40.383MB (SLO: <41.500MB -2.7%) vs baseline: +5.5% ✅ repr_noaspectTime: ✅ 0.419µs (SLO: <10.000µs 📉 -95.8%) vs baseline: +0.5% Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +4.8% ✅ rstrip_aspectTime: ✅ 1.948µs (SLO: <20.000µs 📉 -90.3%) vs baseline: +1.3% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +5.1% ✅ rstrip_noaspectTime: ✅ 0.377µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -0.4% Memory: ✅ 40.285MB (SLO: <41.500MB -2.9%) vs baseline: +5.2% ✅ slice_aspectTime: ✅ 0.492µs (SLO: <10.000µs 📉 -95.1%) vs baseline: +0.3% Memory: ✅ 40.285MB (SLO: <41.500MB -2.9%) vs baseline: +5.0% ✅ slice_noaspectTime: ✅ 0.445µs (SLO: <10.000µs 📉 -95.6%) vs baseline: -1.8% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.9% ✅ stringio_aspectTime: ✅ 1.537µs (SLO: <10.000µs 📉 -84.6%) vs baseline: -0.9% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +4.9% ✅ stringio_noaspectTime: ✅ 0.710µs (SLO: <10.000µs 📉 -92.9%) vs baseline: -0.8% Memory: ✅ 40.285MB (SLO: <41.500MB -2.9%) vs baseline: +5.1% ✅ strip_aspectTime: ✅ 2.241µs (SLO: <20.000µs 📉 -88.8%) vs baseline: +1.4% Memory: ✅ 40.305MB (SLO: <41.500MB -2.9%) vs baseline: +5.3% ✅ strip_noaspectTime: ✅ 0.386µs (SLO: <10.000µs 📉 -96.1%) vs baseline: +1.2% Memory: ✅ 40.226MB (SLO: <41.500MB -3.1%) vs baseline: +4.8% ✅ swapcase_aspectTime: ✅ 2.757µs (SLO: <10.000µs 📉 -72.4%) vs baseline: 📈 +12.7% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +5.0% ✅ swapcase_noaspectTime: ✅ 0.543µs (SLO: <10.000µs 📉 -94.6%) vs baseline: +0.9% Memory: ✅ 40.147MB (SLO: <41.500MB -3.3%) vs baseline: +4.9% ✅ title_aspectTime: ✅ 2.441µs (SLO: <10.000µs 📉 -75.6%) vs baseline: +2.1% Memory: ✅ 40.049MB (SLO: <41.500MB -3.5%) vs baseline: +4.7% ✅ title_noaspectTime: ✅ 0.500µs (SLO: <10.000µs 📉 -95.0%) vs baseline: -0.6% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +5.0% ✅ translate_aspectTime: ✅ 3.301µs (SLO: <10.000µs 📉 -67.0%) vs baseline: +0.2% Memory: ✅ 40.246MB (SLO: <41.500MB -3.0%) vs baseline: +5.0% ✅ translate_noaspectTime: ✅ 1.040µs (SLO: <10.000µs 📉 -89.6%) vs baseline: ~same Memory: ✅ 40.206MB (SLO: <41.500MB -3.1%) vs baseline: +4.8% ✅ upper_aspectTime: ✅ 2.299µs (SLO: <10.000µs 📉 -77.0%) vs baseline: +3.5% Memory: ✅ 40.187MB (SLO: <41.500MB -3.2%) vs baseline: +5.0% ✅ upper_noaspectTime: ✅ 0.367µs (SLO: <10.000µs 📉 -96.3%) vs baseline: -0.6% Memory: ✅ 40.108MB (SLO: <41.500MB -3.4%) vs baseline: +4.3% 📈 iastaspectsospath - 24/24✅ ospathbasename_aspectTime: ✅ 5.201µs (SLO: <10.000µs 📉 -48.0%) vs baseline: 📈 +26.0% Memory: ✅ 40.167MB (SLO: <41.000MB -2.0%) vs baseline: +4.7% ✅ ospathbasename_noaspectTime: ✅ 1.092µs (SLO: <10.000µs 📉 -89.1%) vs baseline: +0.3% Memory: ✅ 40.285MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +5.1% ✅ ospathjoin_aspectTime: ✅ 6.125µs (SLO: <10.000µs 📉 -38.7%) vs baseline: -0.4% Memory: ✅ 40.265MB (SLO: <41.000MB 🟡 -1.8%) vs baseline: +5.2% ✅ ospathjoin_noaspectTime: ✅ 2.292µs (SLO: <10.000µs 📉 -77.1%) vs baseline: +0.4% Memory: ✅ 40.187MB (SLO: <41.000MB 🟡 -2.0%) vs baseline: +3.9% ✅ ospathnormcase_aspectTime: ✅ 3.436µs (SLO: <10.000µs 📉 -65.6%) vs baseline: -0.3% Memory: ✅ 40.206MB (SLO: <41.000MB 🟡 -1.9%) vs baseline: +4.9% ✅ ospathnormcase_noaspectTime: ✅ 0.575µs (SLO: <10.000µs 📉 -94.2%) vs baseline: +0.4% Memory: ✅ 40.206MB (SLO: <41.000MB 🟡 -1.9%) vs baseline: +4.8% ✅ ospathsplit_aspectTime: ✅ 4.742µs (SLO: <10.000µs 📉 -52.6%) vs baseline: -0.7% Memory: ✅ 40.305MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +5.0% ✅ ospathsplit_noaspectTime: ✅ 1.591µs (SLO: <10.000µs 📉 -84.1%) vs baseline: -0.2% Memory: ✅ 40.403MB (SLO: <41.000MB 🟡 -1.5%) vs baseline: +4.6% ✅ ospathsplitdrive_aspectTime: ✅ 3.706µs (SLO: <10.000µs 📉 -62.9%) vs baseline: +1.9% Memory: ✅ 40.147MB (SLO: <41.000MB -2.1%) vs baseline: +4.9% ✅ ospathsplitdrive_noaspectTime: ✅ 0.701µs (SLO: <10.000µs 📉 -93.0%) vs baseline: -0.7% Memory: ✅ 40.246MB (SLO: <41.000MB 🟡 -1.8%) vs baseline: +5.0% ✅ ospathsplitext_aspectTime: ✅ 4.484µs (SLO: <10.000µs 📉 -55.2%) vs baseline: -0.5% Memory: ✅ 40.305MB (SLO: <41.000MB 🟡 -1.7%) vs baseline: +5.2% ✅ ospathsplitext_noaspectTime: ✅ 1.397µs (SLO: <10.000µs 📉 -86.0%) vs baseline: +1.0% Memory: ✅ 40.206MB (SLO: <41.000MB 🟡 -1.9%) vs baseline: +4.7% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 3.411µs (SLO: <20.000µs 📉 -82.9%) vs baseline: 📈 +15.8% Memory: ✅ 34.721MB (SLO: <35.500MB -2.2%) vs baseline: +4.7% ✅ 1-count-metrics-100-timesTime: ✅ 200.637µs (SLO: <220.000µs -8.8%) vs baseline: -0.6% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.6% ✅ 1-distribution-metric-1-timesTime: ✅ 3.286µs (SLO: <20.000µs 📉 -83.6%) vs baseline: -0.2% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.8% ✅ 1-distribution-metrics-100-timesTime: ✅ 215.919µs (SLO: <230.000µs -6.1%) vs baseline: -0.8% Memory: ✅ 34.721MB (SLO: <35.500MB -2.2%) vs baseline: +4.7% ✅ 1-gauge-metric-1-timesTime: ✅ 2.187µs (SLO: <20.000µs 📉 -89.1%) vs baseline: +0.1% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +5.0% ✅ 1-gauge-metrics-100-timesTime: ✅ 135.991µs (SLO: <150.000µs -9.3%) vs baseline: -0.2% Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +5.0% ✅ 1-rate-metric-1-timesTime: ✅ 3.079µs (SLO: <20.000µs 📉 -84.6%) vs baseline: ~same Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +5.2% ✅ 1-rate-metrics-100-timesTime: ✅ 214.645µs (SLO: <250.000µs 📉 -14.1%) vs baseline: -0.4% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.9% ✅ 100-count-metrics-100-timesTime: ✅ 20.396ms (SLO: <22.000ms -7.3%) vs baseline: -0.5% Memory: ✅ 34.878MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +5.2% ✅ 100-distribution-metrics-100-timesTime: ✅ 2.270ms (SLO: <2.300ms 🟡 -1.3%) vs baseline: ~same Memory: ✅ 34.741MB (SLO: <35.500MB -2.1%) vs baseline: +4.9% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.415ms (SLO: <1.550ms -8.7%) vs baseline: +0.4% Memory: ✅ 34.741MB (SLO: <35.500MB -2.1%) vs baseline: +4.7% ✅ 100-rate-metrics-100-timesTime: ✅ 2.212ms (SLO: <2.550ms 📉 -13.3%) vs baseline: -0.8% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +5.2% ✅ flush-1-metricTime: ✅ 4.603µs (SLO: <20.000µs 📉 -77.0%) vs baseline: ~same Memory: ✅ 34.701MB (SLO: <35.500MB -2.2%) vs baseline: +4.7% ✅ flush-100-metricsTime: ✅ 175.405µs (SLO: <250.000µs 📉 -29.8%) vs baseline: +0.9% Memory: ✅ 35.114MB (SLO: <35.500MB 🟡 -1.1%) vs baseline: +4.9% ✅ flush-1000-metricsTime: ✅ 2.180ms (SLO: <2.500ms 📉 -12.8%) vs baseline: -0.4% Memory: ✅ 35.940MB (SLO: <36.500MB 🟡 -1.5%) vs baseline: +4.9% 🟡 Near SLO Breach (16 suites)🟡 coreapiscenario - 10/10 (1 unstable)
|
By tricking the check to think it's on master. dd-trace-py doesn't even use master, so this will not negatively affect metrics.
8d44d7b to
3a0d6dd
Compare
emmettbutler
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thank you for doing this
Description
workflow: auto_cancel: on_new_commit: interruptibleconfiguration to micro/macrobenchmarks child pipelines. Without this, jobs are not really interruptible.when: on_successfor this microbenchmark, relates to ci: update benchmark slo + reporting dependencies #15339 (review).check-slo-breachestemplate from benchmarking-platform-tools and add SLO change detection.check-slo-breachesimage pin, which was being used for testing an update to the SLO check logic).Testing
Testing change 1:
workflowconfiguration.when: on_successfor these.workflowconfiguration.Testing change 3:
Risks
None.
Additional Notes