-
-
Notifications
You must be signed in to change notification settings - Fork 888
Add ARM version of adler32 #2015
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For .NET 7 cross-platform intrinsics will be available, so that code can be written on behalf of Vector128<T> and not via Sse2 / AdvSimd.
I know that it's still a long time until is .NET 7 is available and adopted, but is this something that should be focused on now already?
That's interesting, I was not aware of this. How would that work? SSE has intrinsics which ARM does not have and vice versa. I think its to early to early to consider this now. Anything ARM related is now only pretty much experimental and will not land in the main branch anytime soon. |
Only the "common subset" is exposes as xplat-intrinsics. The journey started in dotnet/runtime#49397 but more operations got added so far -- I can't find a up-to-date summary of all operations 😢.
This is also my expectation. Just wanted to point to it (as a reminder that something is on the way). |
Thanks for sharing, that's very interesting to know. |
Co-authored-by: Günther Foidl <[email protected]>
PNG: Throw exception, if palette chunk is missing
Prerequisites
Description
I was experimenting a bit with ARM hardware intrinsics and decided to port the adler32 version of chromium to ImageSharp.
BenchmarkDotNet=v0.13.1, OS=ubuntu 20.04
Unknown processor
.NET SDK=5.0.402
[Host] : .NET 5.0.11 (5.0.1121.47308), Arm64 RyuJIT
DefaultJob : .NET 5.0.11 (5.0.1121.47308), Arm64 RyuJIT
CPU info:
Benchmark was run with the following data:
There is still a bug, adler results for N 4096:fixedArm: 1010560139Scalar: 1010560140