Skip to content
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

[mono] Regression of BigInteger.Multiply on arm64 AOT-llvm #95403

Closed
matouskozak opened this issue Nov 29, 2023 · 9 comments
Closed

[mono] Regression of BigInteger.Multiply on arm64 AOT-llvm #95403

matouskozak opened this issue Nov 29, 2023 · 9 comments
Labels
area-System.Numerics needs-further-triage Issue has been initially triaged, but needs deeper consideration or reconsideration tenet-performance Performance related issue
Milestone

Comments

@matouskozak
Copy link
Member

Description

Mono runtime recorded regressions for BigInteger.Multiple dotnet/perf-autofiling-issues#24512 on arm64 AOT-llvm. The regressions are possibly caused by e733539 and isolated to Mono runtime (CoreCLR is unaffected).

Configuration

Linux arm64 AOT-llvm

Data

image

@matouskozak matouskozak added the tenet-performance Performance related issue label Nov 29, 2023
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Nov 29, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Nov 29, 2023
@ghost
Copy link

ghost commented Nov 29, 2023

Tagging subscribers to this area: @dotnet/area-system-numerics
See info in area-owners.md if you want to be subscribed.

Issue Details

Description

Mono runtime recorded regressions for BigInteger.Multiple dotnet/perf-autofiling-issues#24512 on arm64 AOT-llvm. The regressions are possibly caused by e733539 and isolated to Mono runtime (CoreCLR is unaffected).

Configuration

Linux arm64 AOT-llvm

Data

image

Author: matouskozak
Assignees: -
Labels:

area-System.Numerics, tenet-performance, untriaged, needs-area-label

Milestone: -

@jkotas jkotas removed the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Nov 29, 2023
@jkotas
Copy link
Member

jkotas commented Nov 29, 2023

cc @adamsitnik @kzrnm

@adamsitnik
Copy link
Member

@jkotas as I wrote in dotnet/perf-autofiling-issues#24512 (comment), CoreCLR has improved on both arm64 and x64. The changes were relatively simple, I don't know what could have caused the regression only on Mono arm64.

@matouskozak
Copy link
Member Author

We have seen improvements in Perf_BigInteger.Multiply(arguments: 65536,32768 bits) across the board: AOT-llvm arm64/x64, JIT x64 (we don't have arm64 JIT perf line), and x64 interpreter.

Perf_BigInteger.Multiply(arguments: 1024,512 bits) regressed mainly on AOT-llvm arm64. There was also a small regression for JIT x64 but the measurements don't seem to be too stable:
image

but no regressions were recorded for AOT-llvm x64.

@vargaz
Copy link
Contributor

vargaz commented Dec 1, 2023

Can't reproduce this locally.

@matouskozak
Copy link
Member Author

Can't reproduce this locally.

I can't reproduce it either on osx-arm64. I will try it on linux arm64 when I figure out how to do it

@steveisok
Copy link
Member

/cc @lateralusX

@tannergooding tannergooding added needs-further-triage Issue has been initially triaged, but needs deeper consideration or reconsideration and removed untriaged New issue has not been triaged by the area owner labels Jun 24, 2024
@jeffhandley jeffhandley added this to the 9.0.0 milestone Jul 27, 2024
@kotlarmilos
Copy link
Member

Do we plan this for .NET 9+?

@tannergooding
Copy link
Member

Multiple users cannot reproduce this (I can't either) and there are measured reproducible significant improvements that went along with the change (dotnet/perf-autofiling-issues#24513).

Please feel free to reopen if we feel this needs more in depth investigation, but as is I'm going to close this as "by design" given its likely some microarchitectural specific quirk and not something related to the S.Numerics implementation

@github-actions github-actions bot locked and limited conversation to collaborators Sep 12, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Numerics needs-further-triage Issue has been initially triaged, but needs deeper consideration or reconsideration tenet-performance Performance related issue
Projects
None yet
Development

No branches or pull requests

8 participants