ippl: use f2c'd version of FFTPACK
- ippl/CMakeLists.txt 1 addition, 3 deletionsippl/CMakeLists.txt
- ippl/doc/tex/introduction.tex 1 addition, 1 deletionippl/doc/tex/introduction.tex
- ippl/src/CMakeLists.txt 9 additions, 8 deletionsippl/src/CMakeLists.txt
- ippl/src/FFT/CMakeLists.txt 1 addition, 0 deletionsippl/src/FFT/CMakeLists.txt
- ippl/src/FFT/fftpack.F 1 addition, 1 deletionippl/src/FFT/fftpack.F
- ippl/src/FFT/fftpack.cpp 519 additions, 373 deletionsippl/src/FFT/fftpack.cpp
-
@gsell, @adelmann, @snuverink_j could someone test whether Opal runs with the C version of fftpack? I get segfaults when space charge solver is used. Works again fine if I revert this commit.
-
@kraus: Is there a regression test, or do you have an input file?
-
I confirm that I get the same segfault for both tests:
[pc12290:01336] Signal: Segmentation fault (11) [pc12290:01336] Signal code: (128) [pc12290:01336] Failing at address: (nil) [pc12290:01336] [ 0] /lib64/libpthread.so.0[0x3ab660f7e0] [pc12290:01336] [ 1] opal(rffti1_+0x1c)[0x25b43ac] [pc12290:01336] [ 2] opal(rffti_+0x24)[0x25b4374] [pc12290:01336] [ 3] opal(_ZN3FFTI11RCTransformLj3EdEC1ERK7NDIndexILj3EES5_RKbi+0x2c7)[0x13109d7] [pc12290:01336] [ 4] opal(_ZN16FFTPoissonSolverC1EP16UniformCartesianILj3EdEP19CenteredFieldLayoutILj3ES1_4CellENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESC_+0xf5c)[0x130428c] [pc12290:01336] [ 5] opal(_ZN11FieldSolver10initSolverEP13PartBunchBaseIdLj3EE+0x7c5)[0x1038d35] [pc12290:01336] [ 6] opal(_ZN8TrackRun16setupFieldsolverEv+0x1ef)[0x13efb6f] [pc12290:01336] [ 7] opal(_ZN8TrackRun21setupCyclotronTrackerEv+0xbb)[0x13f3c2b] [pc12290:01336] [ 8] opal(_ZN8TrackRun7executeEv+0x632)[0x13f5d02] [pc12290:01336] [ 9] opal(_ZNK10OpalParser7executeEP6ObjectRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x35)[0xff7f35]
-
Here a though: if we invest time into the fft, we should also consider to get rid of this dinosaur and use for example fftw or other high performance libs: http://www.fft.report/FFT_BoF.html
-
FFTE: Fortran
Spiral: commercial
Pfft.py: python
nb3dfft: OpenMP
PsFFT, cusFFT: OpenMP
AccFFT: uses FFTW
P3DFFT: Fortran
ParallelFFT: uses FFTW
Edited by kraus -
mentioned in issue #188 (closed)