dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.08k stars 4.7k forks source link

[PERF] Regressions in WASM AOT x64 in Logging.Formatting and IndexOf #92163

Open DrewScoggins opened 1 year ago

DrewScoggins commented 1 year ago

These two issues were found during the manual performance comparison for 8.0 RC1.

https://pvscmdupload.blob.core.windows.net/reports/allTestHistory%2frefs%2fheads%2fmain_x64_ubuntu%2018.04_AOT%3dtrue_CompilationMode%3dwasm_RunKind%3dmicro%2fSystem.Memory.Span(Int32).IndexOfAnyTwoValues(Size%3a%20512).html

Unfortunately, the range for this regression is quite large. https://github.com/dotnet/runtime/compare/15d7761208c88c4bcd2c5052cbccc25f26b5a8a4...74d69fdaaef31d07c6a2f1ca6a030806bf99c7d3

The second issue is https://pvscmdupload.blob.core.windows.net/reports/allTestHistory%2frefs%2fheads%2fmain_x64_ubuntu%2018.04_AOT%3dtrue_CompilationMode%3dwasm_RunKind%3dmicro%2fMicrosoft.Extensions.Logging.Formatting.TwoArguments.html

And the commit range is https://github.com/dotnet/runtime/compare/56552c2288363f71b9492bec12be8d1549d3f13e...7036cba28f20f6a12f4cd2c467f095819983a8c1

ghost commented 1 year ago

Tagging subscribers to 'arch-wasm': @lewing See info in area-owners.md if you want to be subscribed.

Issue Details
These two issues were found during the manual performance comparison for 8.0 RC1. https://pvscmdupload.blob.core.windows.net/reports/allTestHistory%2frefs%2fheads%2fmain_x64_ubuntu%2018.04_AOT%3dtrue_CompilationMode%3dwasm_RunKind%3dmicro%2fSystem.Memory.Span(Int32).IndexOfAnyTwoValues(Size%3a%20512).html Unfortunately, the range for this regression is quite large. https://github.com/dotnet/runtime/compare/15d7761208c88c4bcd2c5052cbccc25f26b5a8a4...74d69fdaaef31d07c6a2f1ca6a030806bf99c7d3 The second issue is https://pvscmdupload.blob.core.windows.net/reports/allTestHistory%2frefs%2fheads%2fmain_x64_ubuntu%2018.04_AOT%3dtrue_CompilationMode%3dwasm_RunKind%3dmicro%2fMicrosoft.Extensions.Logging.Formatting.TwoArguments.html And the commit range is https://github.com/dotnet/runtime/compare/56552c2288363f71b9492bec12be8d1549d3f13e...7036cba28f20f6a12f4cd2c467f095819983a8c1
Author: DrewScoggins
Assignees: -
Labels: `arch-wasm`, `tenet-performance`, `tenet-performance-benchmarks`, `area-VM-meta-mono`
Milestone: -
SamMonoRT commented 1 year ago

Marking for 9.0, but please consider backport to 8.0 servicing for fixes.