-
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
[Perf] Regressions in Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable #54170
Comments
Tagging subscribers to this area: @eerhardt, @maryamariyan Issue DetailsRun Information
Regressions in Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable
Reprogit clone https://github.com/dotnet/performance.git
py .\performance\scripts\benchmarks_ci.py -f netcoreapp5.0 --filter 'Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable*' PayloadsHistogramMicrosoft.Extensions.DependencyInjection.GetServiceIEnumerable.Scoped
Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Transient
DocsProfiling workflow for dotnet/runtime repository
|
So only enumerables regressed? |
Did my change prevent IEnumerable accessors from being compiled? The jump is very high for transient. |
We need to look into it, last time we regressed the perf it was throwing exceptions and nobody knew 😄 |
Yeah, I think it might be IL building process failing. we need to add a debug.Fail somewhere :) |
@pakrym spot the bug runtime/src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceProvider.cs Line 170 in 7c8f5fb
|
@maryamariyan is working on getting perf numbers with this fixed. My hope is it fixes these regressions. |
Oh no, 🤦 |
yes, more info available in this comment #56781 (comment) |
Fixed by #57155. |
Run Information
Regressions in Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable
Historical Data in Reporting System
Repro
Payloads
Baseline
Compare
Histogram
Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Scoped
Microsoft.Extensions.DependencyInjection.GetServiceIEnumerable.Transient
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
The text was updated successfully, but these errors were encountered: