mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-05-29 12:52:28 -04:00
Only use >1 thread for the biggest FFTs
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4933 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
73a69499e4
commit
01626eeaa3
@ -41,7 +41,9 @@ subroutine downsam9(id2,npts8,nsps8,newdat,nspsd,fpk,c2,nz2)
|
|||||||
! Plan the FFTs just once
|
! Plan the FFTs just once
|
||||||
|
|
||||||
!$omp critical(fftw) ! serialize non thread-safe FFTW3 calls
|
!$omp critical(fftw) ! serialize non thread-safe FFTW3 calls
|
||||||
|
call fftwf_plan_with_nthreads(nthreads)
|
||||||
plan=fftwf_plan_dft_r2c_1d(nfft1,x1,c1,nflags)
|
plan=fftwf_plan_dft_r2c_1d(nfft1,x1,c1,nflags)
|
||||||
|
call fftwf_plan_with_nthreads(1)
|
||||||
!$omp end critical(fftw)
|
!$omp end critical(fftw)
|
||||||
|
|
||||||
first=.false.
|
first=.false.
|
||||||
|
@ -41,7 +41,9 @@ subroutine filbig(dd,npts,f0,newdat,c4a,n4,sq0)
|
|||||||
|
|
||||||
! Plan the FFTs just once
|
! Plan the FFTs just once
|
||||||
!$omp critical(fftw) ! serialize non thread-safe FFTW3 calls
|
!$omp critical(fftw) ! serialize non thread-safe FFTW3 calls
|
||||||
|
call fftwf_plan_with_nthreads(nthreads)
|
||||||
plan1=fftwf_plan_dft_r2c_1d(nfft1,rca,ca,nflags)
|
plan1=fftwf_plan_dft_r2c_1d(nfft1,rca,ca,nflags)
|
||||||
|
call fftwf_plan_with_nthreads(1)
|
||||||
plan2=fftwf_plan_dft_1d(nfft2,c4a,c4a,-1,nflags)
|
plan2=fftwf_plan_dft_1d(nfft2,c4a,c4a,-1,nflags)
|
||||||
plan3=fftwf_plan_dft_1d(nfft2,cfilt,cfilt,+1,nflags)
|
plan3=fftwf_plan_dft_1d(nfft2,cfilt,cfilt,+1,nflags)
|
||||||
!$omp end critical(fftw)
|
!$omp end critical(fftw)
|
||||||
|
@ -79,7 +79,7 @@ program jt9
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
iret=fftwf_init_threads() !Initialize FFTW threading
|
iret=fftwf_init_threads() !Initialize FFTW threading
|
||||||
call fftwf_plan_with_nthreads(nthreads)
|
call fftwf_plan_with_nthreads(1) !Default to 1 thread but use nthreads for the big ones
|
||||||
! Import FFTW wisdom, if available
|
! Import FFTW wisdom, if available
|
||||||
wisfile=trim(data_dir)//'/jt9_wisdom.dat'// C_NULL_CHAR
|
wisfile=trim(data_dir)//'/jt9_wisdom.dat'// C_NULL_CHAR
|
||||||
iret=fftwf_import_wisdom_from_filename(wisfile)
|
iret=fftwf_import_wisdom_from_filename(wisfile)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user