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

Arm64 SVE: Size of vector is always 128bits #101433

Open
a74nh opened this issue Apr 23, 2024 · 3 comments
Open

Arm64 SVE: Size of vector is always 128bits #101433

a74nh opened this issue Apr 23, 2024 · 3 comments
Labels
area-System.Numerics arm-sve Work related to arm64 SVE/SVE2 support
Milestone

Comments

@a74nh
Copy link
Contributor

a74nh commented Apr 23, 2024

When using the SVE API, Unsafe.SizeOf on a vector always return 128bits.

Instead, the value should return the current vector length of the machine. For example, Neoverse N2 has 128bits, whereas Neoverse V1 has 256bits.

There are quite a few places within the jit that make 128bit assumptions. These need to instead use the current vector length.

Once merged, #101295 will by default set the vector length of the machine to 128bits. This needs partially reverting so that the default option is to not change the current setting.

When all the above is fixed, all the of HardwareIntrinsics_Arm tests should pass on a Neoverse V1.

@dotnet-policy-service dotnet-policy-service bot added the untriaged New issue has not been triaged by the area owner label Apr 23, 2024
Copy link
Contributor

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

@EgorBo
Copy link
Member

EgorBo commented Apr 23, 2024

For example, Neoverse N2 has 128bits, whereas Neoverse N2 has 256bits.

I presume you meant Neoverse V2 has 256bits

@a74nh
Copy link
Contributor Author

a74nh commented Apr 23, 2024

For example, Neoverse N2 has 128bits, whereas Neoverse N2 has 256bits.

I presume you meant Neoverse V2 has 256bit

V1. Updated above.

@kunalspathak kunalspathak added the arm-sve Work related to arm64 SVE/SVE2 support label Apr 24, 2024
@kunalspathak kunalspathak added this to the Future milestone Jun 20, 2024
@jeffschwMSFT jeffschwMSFT removed the untriaged New issue has not been triaged by the area owner label Jul 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-System.Numerics arm-sve Work related to arm64 SVE/SVE2 support
Projects
None yet
Development

No branches or pull requests

4 participants