-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Regressions in System.Text.Tests.Perf_StringBuilder #64751
Comments
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
Most likely inliner + #64357 |
Tagging subscribers to this area: @dotnet/area-system-runtime Issue DetailsRun Information
Regressions in System.Text.Tests.Perf_StringBuilder
Reprogit clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f net6.0 --filter 'System.Text.Tests.Perf_StringBuilder*' PayloadsHistogramSystem.Text.Tests.Perf_StringBuilder.Append_Span
Description of detection logic
DocsProfiling workflow for dotnet/runtime repository
|
Why doesn't the regression show on the graph here (?) |
@DrewScoggins promised to fix it 🙂 |
Turns out the perf test is buggy: it was trying to append 100 chars 16 times, but it was actually appending an empty span 16 times. Since appending an empty span is rare, my change included moving the 0-length check into the non-inlined helper; this regression comes then from making a non-inlined method call 16 more times than it was previously. This is not something that needs to be fixed. |
The issue that caused this has been fixed, but it is not easy to go back and regenerate the image for the graph. So I am just going to leave it as is for now. |
Run Information
Regressions in System.Text.Tests.Perf_StringBuilder
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Text.Tests.Perf_StringBuilder.Append_Span
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
The text was updated successfully, but these errors were encountered: