You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
How to ensure that my pull request will not break performance? #64
I have made changes for one of story. But not sure if that case, may be not so often, #59, will do degrade performance? May be some step by step guide.
It automates the before/after comparison requested here: exact PR base versus head, the same frozen BenchmarkDotNet workloads for both, Standard and LightExpression, compilation and warmed execution, tree construction, compilation plus first invocation (to account for deferred JIT), and managed allocations. It runs both revision orders on one runner and uploads the complete measurement artifacts.
A separate trusted publisher posts the report on each PR. Reports for older head commits are marked Outdated and collapsed; reruns of the same head update its report. Fork benchmark jobs remain read-only, while the publisher validates data without executing PR code or artifact scripts.
The initial phase is reporting only so we can observe hosted-runner variation before making regressions required checks. Local opt-in blocking policy and tests are included. The minimal-IL theoretical comparison discussed above is a separate experiment and is not implemented here. Automatic publishing starts once the publisher workflow is merged into master.
Activity
dadhi commentedon Mar 10, 2018
Good question.
dadhi commentedon Aug 31, 2018
Another idea from #115 discussion.
CompileFastthe test delegate,CreateDelegateto get a minimal possible time (assuming singe threaded liniar compilation)dadhi commentedon Mar 3, 2025
Maybe via https://github.com/AnthonyLloyd/CsCheck
jogibear9988 commentedon Oct 24, 2026
Opened draft PR #564: #564
It automates the before/after comparison requested here: exact PR base versus head, the same frozen BenchmarkDotNet workloads for both, Standard and LightExpression, compilation and warmed execution, tree construction, compilation plus first invocation (to account for deferred JIT), and managed allocations. It runs both revision orders on one runner and uploads the complete measurement artifacts.
A separate trusted publisher posts the report on each PR. Reports for older head commits are marked Outdated and collapsed; reruns of the same head update its report. Fork benchmark jobs remain read-only, while the publisher validates data without executing PR code or artifact scripts.
The initial phase is reporting only so we can observe hosted-runner variation before making regressions required checks. Local opt-in blocking policy and tests are included. The minimal-IL theoretical comparison discussed above is a separate experiment and is not implemented here. Automatic publishing starts once the publisher workflow is merged into master.
ci: compare PR performance and publish head-specific reports safely
dadhi commentedon Oct 25, 2026
closed by #564