-
Notifications
You must be signed in to change notification settings - Fork 4
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] Linux/x64: 22 Regressions on 2/6/2023 2:23:37 PM #12707
Comments
@tannergooding Looks like we are seeing regressions from this on the interpreter too : dotnet/runtime@90401dd @BrzVlad Is there any particular reason that change would be problematic for the interpreter and is there any on going work that would improve it? |
I'm surprised for these methods given the change in question didn't touch the managed implementation of something like |
It seems to me that this regression is caused by reliance on vectorized operations. For example in |
Yes these APIs are marketed as being SIMD accelerated and are not expected to be used when SIMD acceleration is not available (e.g. when
This would regress things more for the primary scenario since it bloats the IL size and makes the methods more difficult to inline/optimize. This is why it is not done today. The "fix" is to finish onboarding SIMD support in Mono, which exists on practically every device (only embedded and other customized scenarios not supporting it). The open PR that adds SIMD support to the interpreter is a good step in this direction, but for this scenario in particular it would require more support around Noting that while |
I tested I think |
For
|
@BrzVlad the regressions are mitigated by dotnet/runtime#87822. |
Run Information
Regressions in System.Numerics.Tests.Perf_Vector3
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Numerics.Tests.Perf_Vector3.MultiplyByScalarBenchmark
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Regressions in System.Numerics.Tests.Perf_Vector4
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Numerics.Tests.Perf_Vector4.DistanceBenchmark
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in System.Memory.Span<Char>
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Memory.Span<Char>.IndexOfAnyThreeValues(Size: 33)
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in Benchstone.BenchI.TreeInsert
Test Report
Repro
Payloads
Baseline
Compare
Histogram
Benchstone.BenchI.TreeInsert.Test
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in System.Tests.Perf_Boolean
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Tests.Perf_Boolean.TryParse(value: "0")
Description of detection logic
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in System.Numerics.Tests.Perf_Quaternion
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Numerics.Tests.Perf_Quaternion.InverseBenchmark
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: