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

SVE Imlementation #355

Open
Juliya32 opened this issue May 7, 2024 · 1 comment
Open

SVE Imlementation #355

Juliya32 opened this issue May 7, 2024 · 1 comment

Comments

@Juliya32
Copy link

Juliya32 commented May 7, 2024

Hi
1)Is sve already implemented in fftw-3.3.10
i) If yes, is it implemented for all routines?
ii) If not , How can one implement for the remaining routines ( Where to make the changes in the code and any other
targeted file sve.
I have checked this (https://github.com/rdolbeau/fftw3/tree/arm-sve) and found only one program that uses
sve_width() (calculates width of sve vector) in simd-support/sve.h file.
2) If sve is not applied at all could you please guide me in applying sve to fftw library. I tried changing the given part of code
under kernel/planner.c usning intrinsics on arm.
for (i = 0; i < osiz; ++i)
ntab[i] = otab[i];
After making the changing i tried rebuilding the library, but it throws error that arm_sve is not supported.
(It cannot recognize any sve data types or routines like sv_bool, sv_float32, svld1 etc. )

I built the library using the following commands:
1)./configure --prefix=/home/../FFTW_SVE/fftw-3.3.10/build/ --enable-sve --enable-neon --enable-fma --enable-armv8-cntvct-e10 --enable-threads --enable-shared --enable-single CC=gcc CFLAGS="-O3 -gdwarf-4 -mtune=native -march=armv8.2-a+sve -msve-vector-bits=512" CXXFLAGS="-Ofast -march=armv8.2-a+sve -sve-vector-bits=512" FC=gfortran FFLAGS="-g -O3 -march=armv8.2-a+sve -msve-vector-bits=512"
2)make
3)make install
gcc --version 12.2.0

@rdolbeau
Copy link
Contributor

rdolbeau commented Jul 3, 2024

see #315, yes it can be exploited in all plans (but will only be used if useful vs. scalar and NEON if using >= measure)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants