FFTW / fftw3

DO NOT CHECK OUT THESE FILES FROM GITHUB UNLESS YOU KNOW WHAT YOU ARE DOING. (See below.)
GNU General Public License v2.0
2.66k stars 651 forks source link

Compilation Error #353

Open Juliya32 opened 2 months ago

Juliya32 commented 2 months ago

Hi , 1)How can we compile the fftw test codes(/home/...../FFTW_SVE/fftw-3.3.10/tests/fftw-bench.c) in the arm directory with sve for benchmarking.

  2) How to resolve this issue
      /opt/arm/armgcc/binutils_bin/ld: /tmp/ccTAlgm6.o: in function `done':
    /home/../fftw-3.3.10/tests/fftw-bench.c:283: undefined reference to `uninstall_hook'
    /opt/arm/armgcc/binutils_bin/ld: /tmp/ccTAlgm6.o: in function `cleanup':
   /home/../fftw-3.3.10/tests/fftw-bench.c:288: undefined reference to `initial_cleanup'
   undefined reference to `verbose'
    undefined reference to `timer_start'
    undefined reference to `bench_assertion_failed'

  3)Can you suggest any other codes for fftw benchmarking with sve.

  4)I tried with 1dimensional fftw code.but  while checking its assembly code sve registers and neon registers are not found.why?
stevengj commented 2 months ago

What compile commands are you using? Are you using ./configure && make? With what options?

Juliya32 commented 2 months ago

Hi This is my configuration command 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 commented 6 days ago

If you're using one of my release for SVE, then the 'bench' binary in tests/ should be built by default, as for other fftw3 version.

It can be used for testing (in tests/ simply do "make check" or "make bigcheck" or ...) and benchmarking using the -s option, such as "./bench -omeasure -v2 -s ocf2048" which will test an (o)ut-of-place, (c)omplex, (f)forward 2048 pts FFT.