-
-
Notifications
You must be signed in to change notification settings - Fork 9
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
Stabilize aarch64 features #1
Comments
Thanks. I will stabilize aarch64 features in v0.6.0 updates |
The target feature "neon" is still unstable. We have to wait for it. See rust-lang/rust#44839 |
Ah that's disappointing, strange they would stabilize the other APIs without this one. Thanks anyway! |
The target feature has been stabilized since 1.61 (rust-lang/rust#90621). I have no arm/aarch64 machines. The CI uses cross-rs to test correctness. Before landing aarch64 simd functions, I need to find a way to continuously confirm the performance. |
@Nugine I'm unaware of any plans for new & free aarch64 runners (from github or other free CI providers). AFAIK folks are using self-hosted runners, which seems difficult and somewhat costly to setup and maintain. In the meantime, would it be reasonable for contributors to help out (manually) here? For example, I'm happy to volunteer to help with that (using my macbook M1). For example, PRs could request for contributor(s) to pull the code, run the tests/benchmarks, and post the results. This seems like a common workflow for other repos where arm/M1 features are being worked on. |
I have managed to test aarch64 simd on my android phone (armv8). The performance looks good. These providers have limited running time for free
i plan to setup arm tests and benches with CircleCI. You are welcome to help with this project. There is no guide for local development yet. I will add some docs later. For now, you can run this command just bench static The benchmark will save the results in a markdown file and print it. Note that it may take hours to run the whole benchmark. The script depends on: |
Thank you for the info! |
Stabilized in commit 5a00b30. Further steps: Benchmarks running on physical machines are more realistic than CI. It will be helpful if you could report the statistics. |
The arch::is_aarch64_feature_detected! feature has been stabilized as of rust 1.60.0: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1600-2022-04-07
And armv8 neon intrinsics for aarch64 are stabilized as of rust 1.59.0: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1590-2022-02-24
The hex simd features in particular should be possible to use without the unstable flag.
Awesome work on this library btw, very useful!
The text was updated successfully, but these errors were encountered: