-
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: 9 Regressions on 7/10/2024 6:50:30 PM #38367
Comments
@tannergooding I think these this were caused by dotnet/runtime#103837. Are those regressions expected? |
AOT-llvm related regression dotnet/runtime#106475 |
These aren't expected. But are probably due to the use of generics to avoid duplicating code across the 7x2 different types that need to be supported. These ones probably need direct intrinsic handling added to Mono. |
cc: @fanyang-mono |
Truncate shouldn't be too hard to add, nor should I can take a look at getting |
@tannergooding I just want to clarify that there are more regressions for Mono AOT run, which are related to |
These are likely caused by dotnet/runtime#104651. Are we missing intrinsics for these APIs as well? |
Mono only has Max/Min today, it doesn't have MaxMagnitude/MaxMagnitudeNumber or the Min variants. The code required for them is more complex and I'm not sure all the ISA support needed exists for x64 today. It should be possible/trivial to handle for Arm64, however. |
@tannergooding Arm64 is more important for Mono targets. We could leave the x64 work for later. Unless, it is related to Vector128, which Mono has the same coverage for all architectures and all codegen backends and would like to maintain that way. |
It is for V128, but for x64 the IR needed is quite verbose. If Mono does support all the instructions, I'll make sure to get it added and otherwise log an issue |
Run Information
Regressions in System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
Prerequisites (Build files either built locally or downloaded from payload above)
runtime/artifacts
or build instructions: Libraries README args:-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release
, build instructions: CoreCLR README args:-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/mono/$RunOS.$RunArch.Release
, build instructions: MONO README args:-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release
Linux
Windows
System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>.DeserializeFromStream(Mode: SourceGen)
ETL Files
Histogram
JIT Disasms
System.Text.Json.Serialization.Tests.ReadJson<Nullable<DateTimeOffset>>.DeserializeFromStream(Mode: Reflection)
ETL Files
Histogram
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
Prerequisites (Build files either built locally or downloaded from payload above)
runtime/artifacts
or build instructions: Libraries README args:-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release
, build instructions: CoreCLR README args:-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/mono/$RunOS.$RunArch.Release
, build instructions: MONO README args:-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release
Linux
Windows
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Round(BufferLength: 3079)
ETL Files
Histogram
JIT Disasms
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Truncate(BufferLength: 128)
ETL Files
Histogram
JIT Disasms
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Single>.Truncate(BufferLength: 3079)
ETL Files
Histogram
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
Run Information
Regressions in System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>
Test Report
Repro
General Docs link: https://github.com/dotnet/performance/blob/main/docs/benchmarking-workflow-dotnet-runtime.md
Repro Steps
Prerequisites (Build files either built locally or downloaded from payload above)
runtime/artifacts
or build instructions: Libraries README args:-subset libs+libs.tests -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/coreclr/$RunOS.$RunArch.Release
, build instructions: CoreCLR README args:-subset clr+libs -rc release -configuration Release -arch $RunArch -framework net8.0
runtime/artifacts/bin/mono/$RunOS.$RunArch.Release
, build instructions: MONO README args:-arch $RunArch -os $RunOS -s mono+libs+host+packs -c Release
Linux
Windows
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Truncate(BufferLength: 3079)
ETL Files
Histogram
JIT Disasms
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Round(BufferLength: 128)
ETL Files
Histogram
JIT Disasms
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Truncate(BufferLength: 128)
ETL Files
Histogram
JIT Disasms
System.Numerics.Tensors.Tests.Perf_FloatingPointTensorPrimitives<Double>.Round(BufferLength: 3079)
ETL Files
Histogram
JIT Disasms
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
The text was updated successfully, but these errors were encountered: