added set_timelimit functionality to fortran-wrapper of FFTW and introcudec it to DAMASK_spectral.f90

This commit is contained in:
Martin Diehl 2011-11-21 18:48:38 +00:00
parent 566f16b6e9
commit 5a1e73b53d
6 changed files with 11 additions and 3 deletions

View File

@ -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

View File

@ -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

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.