jasonlarkin / p3dfft

Automatically exported from code.google.com/p/p3dfft
GNU General Public License v3.0
0 stars 0 forks source link

Build errors in sample tests with PGI compiler #31

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Making all in sample
make[2]: Entering directory `/home/djchen/p3dfft-f90/sample'
Making all in C
make[3]: Entering directory `/home/djchen/p3dfft-f90/sample/C'
mpicc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include/  -DREVERSE_DIMS
-DFFTW    -fastsse -tp barcelona-64 -DPGI -c driver_sine.c
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 151)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 151)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 164)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 164)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 151)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 151)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 164)
PGC-W-0095-Type cast required for this conversion (driver_sine.c: 164)
PGC/x86-64 Linux 8.0-6: compilation completed with warnings
mpicc  -fastsse -tp barcelona-64 -DPGI  -lmpi_f90 -lmpi_f77 -pgf90libs
-lmyriexpress -o test_sine.x  driver_sine.o ../../build/libp3dfft.a
/opt/pgi/fftw_pgi/lib/libfftw3.a 
mpicc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include/  -DREVERSE_DIMS
-DFFTW    -fastsse -tp barcelona-64 -DPGI -c driver_sine_inplace.c
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 152)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 152)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 165)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 165)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 152)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 152)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 165)
PGC-W-0095-Type cast required for this conversion (driver_sine_inplace.c: 165)
PGC/x86-64 Linux 8.0-6: compilation completed with warnings
mpicc  -fastsse -tp barcelona-64 -DPGI  -lmpi_f90 -lmpi_f77 -pgf90libs
-lmyriexpress -o test_sine_inplace.x  driver_sine_inplace.o
../../build/libp3dfft.a /opt/pgi/fftw_pgi/lib/libfftw3.a 
mpicc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include/  -DREVERSE_DIMS
-DFFTW    -fastsse -tp barcelona-64 -DPGI -c driver_rand.c
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 153)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 153)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 166)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 166)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 153)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 153)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 166)
PGC-W-0095-Type cast required for this conversion (driver_rand.c: 166)
PGC/x86-64 Linux 8.0-6: compilation completed with warnings
mpicc  -fastsse -tp barcelona-64 -DPGI  -lmpi_f90 -lmpi_f77 -pgf90libs
-lmyriexpress -o test_rand.x  driver_rand.o ../../build/libp3dfft.a
/opt/pgi/fftw_pgi/lib/libfftw3.a 
mpicc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include/  -DREVERSE_DIMS
-DFFTW    -fastsse -tp barcelona-64 -DPGI -c driver_spec.c
PGC-W-0095-Type cast required for this conversion (driver_spec.c: 148)
PGC-W-0095-Type cast required for this conversion (driver_spec.c: 148)
PGC-W-0095-Type cast required for this conversion (driver_spec.c: 148)
PGC-W-0095-Type cast required for this conversion (driver_spec.c: 148)
PGC/x86-64 Linux 8.0-6: compilation completed with warnings
mpicc  -fastsse -tp barcelona-64 -DPGI  -lmpi_f90 -lmpi_f77 -pgf90libs
-lmyriexpress -o test_spec.x  driver_spec.o ../../build/libp3dfft.a
/opt/pgi/fftw_pgi/lib/libfftw3.a 
make[3]: Leaving directory `/home/djchen/p3dfft-f90/sample/C'
Making all in FORTRAN
make[3]: Entering directory `/home/djchen/p3dfft-f90/sample/FORTRAN'
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio -c -o
driver_sine.o driver_sine.f90
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio  -lmpi_f90
-lmpi_f77 -pgf90libs -lmyriexpress -o test_sine.x  driver_sine.o
../../build/libp3dfft.a /opt/pgi/fftw_pgi/lib/libfftw3.a 
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio -c -o
driver_sine_inplace.o driver_sine_inplace.f90
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio  -lmpi_f90
-lmpi_f77 -pgf90libs -lmyriexpress -o test_sine_inplace.x 
driver_sine_inplace.o ../../build/libp3dfft.a /opt/pgi/fftw_pgi/lib/libfftw3.a 
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio -c -o
driver_rand.o driver_rand.f90
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio  -lmpi_f90
-lmpi_f77 -pgf90libs -lmyriexpress -o test_rand.x  driver_rand.o
../../build/libp3dfft.a /opt/pgi/fftw_pgi/lib/libfftw3.a 
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio -c -o
driver_spec.o driver_spec.f90
mpif90 -fastsse -tp barcelona-64 -Mextend -byteswapio -DREVERSE_DIMS -DFFTW
-I../../include/  -fastsse -tp barcelona-64 -Mextend -byteswapio  -lmpi_f90
-lmpi_f77 -pgf90libs -lmyriexpress -o test_spec.x  driver_spec.o
../../build/libp3dfft.a /opt/pgi/fftw_pgi/lib/libfftw3.a 
make[3]: Leaving directory `/home/djchen/p3dfft-f90/sample/FORTRAN'
make[3]: Entering directory `/home/djchen/p3dfft-f90/sample'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/djchen/p3dfft-f90/sample'
make[2]: Leaving directory `/home/djchen/p3dfft-f90/sample'
make[2]: Entering directory `/home/djchen/p3dfft-f90'
make[2]: Leaving directory `/home/djchen/p3dfft-f90'
make[1]: Leaving directory `/home/djchen/p3dfft-f90'

Original issue reported on code.google.com by dan.djc...@gmail.com on 7 May 2010 at 2:16

GoogleCodeExporter commented 9 years ago
With it on single precision, --enable-single, compiling (make) fails on Triton.

$ make
make  all-recursive
make[1]: Entering directory `/home/djchen/p3dfft-f90'
Making all in build
make[2]: Entering directory `/home/djchen/p3dfft-f90/build'
mpif90 -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/pgi/fftw_pgi/include   -fastsse -tp
barcelona-64 -Mextend -byteswapio -DSINGLE_PREC -DREVERSE_DIMS -DFFTW -fastsse 
-tp
barcelona-64 -Mextend -byteswapio -c -o fft_spec.o fft_spec.F90
mpif90 -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/pgi/fftw_pgi/include   -fastsse -tp
barcelona-64 -Mextend -byteswapio -DSINGLE_PREC -DREVERSE_DIMS -DFFTW -fastsse 
-tp
barcelona-64 -Mextend -byteswapio -c -o module.o module.F90
mpif90 -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/pgi/fftw_pgi/include   -fastsse -tp
barcelona-64 -Mextend -byteswapio -DSINGLE_PREC -DREVERSE_DIMS -DFFTW -fastsse 
-tp
barcelona-64 -Mextend -byteswapio -c -o fft_init.o fft_init.F90
PGF90-S-0034-Syntax error at or near identifier x (fft_init.F90: 250)
  0 inform,   0 warnings,   1 severes, 0 fatal for plan_f_r2c
make[2]: *** [fft_init.o] Error 2
make[2]: Leaving directory `/home/djchen/p3dfft-f90/build'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/djchen/p3dfft-f90'
make: *** [all] Error 2

Original comment by dan.djc...@gmail.com on 7 May 2010 at 2:20

GoogleCodeExporter commented 9 years ago
It appears there was a missing comma at line 250. Fixing it reveals errors with 
regards 
to FFTW.

Original comment by masta.p...@gmail.com on 7 May 2010 at 4:35

GoogleCodeExporter commented 9 years ago
Okay I just committed some new changes to the Makefile in build. p3dfft never 
really 
needed to link with the fftw library when it was compiled in double-precision, 
but 
seems to need it when it is being compiled in single-precision. Currently all 
there's 
left to this issue is some fftw linking problems with the C samples.

Original comment by masta.p...@gmail.com on 7 May 2010 at 4:45

GoogleCodeExporter commented 9 years ago
So it looks like the C samples are failing to compile because they are not 
being linked 
with the float-version of the FFTW library. I'll add in a new rule for this in 
the 
config file.

Original comment by masta.p...@gmail.com on 7 May 2010 at 4:55

GoogleCodeExporter commented 9 years ago
The Makefiles have been updated to link libfftw3f.a 

However it seems that Triton is missing this library in their FFTW directory. I 
checked TACC and they have libfftw3f.a in their FFTW directory. So we might 
need to 
ask SDSC to  have the libfftw3f.a in their /opt/pgi/fftw_pgi/lib directory. 
Otherwise 
it's up to the user to compile FFTW themselves and have the configure script 
point to 
the directory where they compiled it. 

Anyways I tested the changes and they work. However I'm going to need to add a 
rule 
to detect whether or not to link libfftw3f.a

Original comment by masta.p...@gmail.com on 7 May 2010 at 5:15

GoogleCodeExporter commented 9 years ago
A rule has been added to link fftw3f if the user wants to compile p3dfft in 
single
precision. You can find the latest changes committed to the p3dfft-f90 branch.

Original comment by d4p...@ucsd.edu on 7 May 2010 at 8:00