added set_timelimit functionality to fortran-wrapper of FFTW and introcudec it to DAMASK_spectral.f90
This commit is contained in:
parent
566f16b6e9
commit
5a1e73b53d
|
@ -424,7 +424,7 @@ program DAMASK_spectral
|
||||||
call dfftw_plan_with_nthreads(DAMASK_NumThreadsInt)
|
call dfftw_plan_with_nthreads(DAMASK_NumThreadsInt)
|
||||||
endif
|
endif
|
||||||
#endif
|
#endif
|
||||||
!call dfftw_timelimit(fftw_timelimit) ! is not working, have to fix it in FFTW source file
|
call dfftw_set_timelimit(fftw_timelimit) ! is not working, have to fix it in FFTW source file
|
||||||
select case(IO_lc(fftw_planner_flag)) ! setting parameters for the plan creation of FFTW. Basically a translation from fftw3.f
|
select case(IO_lc(fftw_planner_flag)) ! setting parameters for the plan creation of FFTW. Basically a translation from fftw3.f
|
||||||
case('estimate','fftw_estimate') ! ordered from slow execution (but fast plan creation) to fast execution
|
case('estimate','fftw_estimate') ! ordered from slow execution (but fast plan creation) to fast execution
|
||||||
fftw_flag = 64
|
fftw_flag = 64
|
||||||
|
|
|
@ -6,8 +6,16 @@
|
||||||
# Uses OpenMP to parallelise the material subroutines (set number of cores with "export DAMASK_NUM_THREADS=n" to n)
|
# Uses OpenMP to parallelise the material subroutines (set number of cores with "export DAMASK_NUM_THREADS=n" to n)
|
||||||
# Uses linux threads to parallelise fftw3
|
# Uses linux threads to parallelise fftw3
|
||||||
# Besides of the f90 files written at MPIE, the two library files of fftw3 "libfftw3_threads.a" "libfftw3.a" are also needed
|
# Besides of the f90 files written at MPIE, the two library files of fftw3 "libfftw3_threads.a" "libfftw3.a" are also needed
|
||||||
# Install fftw3 (v3.3 is tested) with "./configure --enable-threads --enable-sse2 --enable-shared" and "make"; "make install" is not needed
|
# Install fftw3 (v3.3 is tested):
|
||||||
# as long as the two library files "libfftw3_threads.a" "libfftw3.a" are copied to the /../lib directory.
|
# -Apply the following patch to api/f77funcs.h, line 92 in the FFTW source:
|
||||||
|
#
|
||||||
|
# FFTW_VOIDFUNC F77(set_timelimit,SET_TIMELIMIT)(double *t)
|
||||||
|
# {
|
||||||
|
# X(set_timelimit)(*t);
|
||||||
|
# }
|
||||||
|
# -Do "./configure --enable-threads --enable-sse2 --enable-shared" and "make"; "make install" is not needed
|
||||||
|
# as long as the two library files "libfftw3_threads.a" "libfftw3.a" are copied to the /../lib directory.
|
||||||
|
# for single precision also use --enable-float
|
||||||
# Need the AMD Core Math Library to be installed (v 4.4 is tested)
|
# Need the AMD Core Math Library to be installed (v 4.4 is tested)
|
||||||
########################################################################################
|
########################################################################################
|
||||||
# OPTIONS = standard (alternative): meaning
|
# OPTIONS = standard (alternative): meaning
|
||||||
|
|
BIN
lib/libfftw3.a
BIN
lib/libfftw3.a
Binary file not shown.
Binary file not shown.
BIN
lib/libfftw3f.a
BIN
lib/libfftw3f.a
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue