bench(sirun): add profiler workload and llmobs guard, shorten over-long benches#8787
Merged
Merged
Conversation
The variants started the profiler and exited immediately, so the wall and space profilers had nothing to sample and the bench measured init only. A bounded workload after init keeps the process busy under the 60s upload period, so no profile is exported and no agent is required, and the startup guard keeps the loop dominant.
These benches ran far longer per process than needed for a stable signal, so the high counts only inflated CI wall time. The lower counts preserve the measurement while cutting runtime.
Contributor
Overall package sizeSelf size: 6.17 MB Dependency sizes| name | version | self size | total size | |------|---------|-----------|------------| | import-in-the-middle | 3.0.1 | 82.56 kB | 817.39 kB | | opentracing | 0.14.7 | 194.81 kB | 194.81 kB | | dc-polyfill | 0.1.11 | 25.74 kB | 25.74 kB |🤖 This report was automatically generated by heaviest-objects-in-the-universe |
🎉 All green!🧪 All tests passed 🎯 Code Coverage (details) 🔗 Commit SHA: 46f0382 | Docs | Datadog PR Page | Give us feedback! |
BenchmarksBenchmark execution time: 2026-06-03 21:37:23 Comparing candidate commit 46f0382 in PR branch Found 87 performance improvements and 0 performance regressions! Performance is the same for 1361 metrics, 19 unstable metrics. scenario:child_process-file-args-20
scenario:child_process-file-args-24
scenario:child_process-file-args-26
scenario:child_process-shell-string-20
scenario:child_process-shell-string-24
scenario:child_process-shell-string-26
scenario:fs-subscribed-20
scenario:fs-subscribed-24
scenario:fs-subscribed-26
scenario:plugin-dns-with-tracer-20
scenario:plugin-graphql-long-with-depth-and-collapse-off-20
scenario:plugin-graphql-long-with-depth-and-collapse-off-24
scenario:plugin-graphql-long-with-depth-and-collapse-off-26
scenario:plugin-http-server-querystring-obfuscation-20
scenario:plugin-http-server-querystring-obfuscation-24
scenario:plugin-http-server-querystring-obfuscation-26
scenario:plugin-redis-get-20
scenario:plugin-redis-get-24
scenario:plugin-redis-get-26
scenario:plugin-redis-mset-wide-20
scenario:plugin-redis-mset-wide-24
scenario:plugin-redis-mset-wide-26
scenario:tracing-channel-command-20
scenario:tracing-channel-command-24
scenario:tracing-channel-command-26
scenario:url-endpoint-and-obfuscation-20
scenario:url-endpoint-and-obfuscation-24
scenario:url-endpoint-and-obfuscation-26
|
BridgeAR
commented
Jun 3, 2026
rochdev
approved these changes
Jun 5, 2026
dd-octo-sts Bot
pushed a commit
that referenced
this pull request
Jun 6, 2026
…ng benches (#8787) * bench(profiler): add a bounded CPU and allocation workload The variants started the profiler and exited immediately, so the wall and space profilers had nothing to sample and the bench measured init only. A bounded workload after init keeps the process busy under the 60s upload period, so no profile is exported and no agent is required, and the startup guard keeps the loop dominant. * bench(llmobs): add the startup guard to the writer encode loop * bench(sirun): lower iteration counts on over-long benches These benches ran far longer per process than needed for a stable signal, so the high counts only inflated CI wall time. The lower counts preserve the measurement while cutting runtime. * Update benchmark/sirun/profiler/index.js
Merged
crysmags
added a commit
that referenced
this pull request
Jun 9, 2026
…nch rework The earlier revert (90a60ba) used a stale local master ref and pulled an older version of these files. Master has since picked up #8787 (profiler workload + llmobs guard + shortened benches) and #8734 (integration tuning) which both touch these paths, so the branch went CONFLICTING and Actions stopped triggering on new commits. Pulls in origin/master's current shape for both meta.json (3 variants, adjusted query counts) and index.js (startup guard + assert + the no-WITH_ASYNC_HOOKS path). No graphql plugin code is affected. Co-Authored-By: Claude Opus 4.7 <[email protected]>
BridgeAR
added a commit
that referenced
this pull request
Jun 11, 2026
…ng benches (#8787) * bench(profiler): add a bounded CPU and allocation workload The variants started the profiler and exited immediately, so the wall and space profilers had nothing to sample and the bench measured init only. A bounded workload after init keeps the process busy under the 60s upload period, so no profile is exported and no agent is required, and the startup guard keeps the loop dominant. * bench(llmobs): add the startup guard to the writer encode loop * bench(sirun): lower iteration counts on over-long benches These benches ran far longer per process than needed for a stable signal, so the high counts only inflated CI wall time. The lower counts preserve the measurement while cutting runtime. * Update benchmark/sirun/profiler/index.js
tlhunter
pushed a commit
that referenced
this pull request
Jun 18, 2026
…ng benches (#8787) * bench(profiler): add a bounded CPU and allocation workload The variants started the profiler and exited immediately, so the wall and space profilers had nothing to sample and the bench measured init only. A bounded workload after init keeps the process busy under the 60s upload period, so no profile is exported and no agent is required, and the startup guard keeps the loop dominant. * bench(llmobs): add the startup guard to the writer encode loop * bench(sirun): lower iteration counts on over-long benches These benches ran far longer per process than needed for a stable signal, so the high counts only inflated CI wall time. The lower counts preserve the measurement while cutting runtime. * Update benchmark/sirun/profiler/index.js
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.
Summary
Three independent sirun tuning changes:
child_process,fs,plugin-graphql-long,plugin-http,plugin-redis,startup,tracing-channel, andurlran far longer per process than a stable signal needs; lower iteration counts keep the measurement while cutting CI wall time.