Reduce stack usage of F8 decoder modules

Reverted to default stack allocation for jt9.exe on Windows.

Tidied up FT8 decoder inteface  to remove arguments that will probably
never be used.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7768 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Bill Somerville 2017-07-01 18:46:14 +00:00
parent 53dbe3248f
commit f73a35842a
3 changed files with 12 additions and 14 deletions

View File

@ -1223,9 +1223,9 @@ if (${OPENMP_FOUND} OR APPLE)
) )
endif (APPLE) endif (APPLE)
if (WIN32) if (WIN32)
set_target_properties (jt9 PROPERTIES # set_target_properties (jt9 PROPERTIES
LINK_FLAGS -Wl,--stack,16777216 # LINK_FLAGS -Wl,--stack,16777216
) # )
endif () endif ()
target_link_libraries (jt9 wsjt_fort_omp wsjt_cxx Qt5::Core) target_link_libraries (jt9 wsjt_fort_omp wsjt_cxx Qt5::Core)
else (${OPENMP_FOUND} OR APPLE) else (${OPENMP_FOUND} OR APPLE)

View File

@ -69,10 +69,10 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
if(params%nmode.eq.8) then if(params%nmode.eq.8) then
! We're in FT8 mode ! We're in FT8 mode
call timer('decft8 ',0) call timer('decft8 ',0)
call my_ft8%decode(ft8_decoded,ss,id2,params%nfqso, & call my_ft8%decode(ft8_decoded,id2,params%nfqso, &
newdat9,params%npts8,params%nutc,params%nfa,params%nfsplit, & newdat9,params%nutc,params%nfa, &
params%nfb,params%ntol,params%nzhsym,logical(params%nagain), & params%nfb,logical(params%nagain), &
params%ndepth,params%nmode,params%nsubmode,params%nexp_decode) params%ndepth,params%nsubmode)
call timer('decft8 ',1) call timer('decft8 ',1)
go to 800 go to 800
endif endif
@ -400,7 +400,6 @@ contains
integer, intent(in) :: nbadcrc integer, intent(in) :: nbadcrc
character(len=22), intent(in) :: decoded character(len=22), intent(in) :: decoded
!### !$omp critical(decode_results)
if(nbadcrc.eq.0) then if(nbadcrc.eq.0) then
write(*,1000) params%nutc,snr,dt,nint(freq),decoded write(*,1000) params%nutc,snr,dt,nint(freq),decoded
1000 format(i6.6,i4,f5.1,i5,' ~ ',1x,a22) 1000 format(i6.6,i4,f5.1,i5,' ~ ',1x,a22)
@ -409,7 +408,6 @@ contains
call flush(6) call flush(6)
call flush(13) call flush(13)
endif endif
!### !$omp end critical(decode_results)
select type(this) select type(this)
type is (counting_ft8_decoder) type is (counting_ft8_decoder)

View File

@ -22,21 +22,21 @@ module ft8_decode
contains contains
subroutine decode(this,callback,ss,iwave,nfqso,newdat,npts8,nutc,nfa, & subroutine decode(this,callback,iwave,nfqso,newdat,nutc,nfa, &
nfsplit,nfb,ntol,nzhsym,nagain,ndepth,nmode,nsubmode,nexp_decode) nfb,nagain,ndepth,nsubmode)
use timer_module, only: timer use timer_module, only: timer
include 'fsk4hf/ft8_params.f90' include 'fsk4hf/ft8_params.f90'
class(ft8_decoder), intent(inout) :: this class(ft8_decoder), intent(inout) :: this
procedure(ft8_decode_callback) :: callback procedure(ft8_decode_callback) :: callback
real ss(1,1) !### dummy, to be removed ###
real s(NH1,NHSYM) real s(NH1,NHSYM)
real candidate(3,100) real candidate(3,100)
real dd(15*12000) real dd(15*12000)
logical, intent(in) :: newdat, nagain logical, intent(in) :: newdat, nagain
integer*2 iwave(15*12000) integer*2 iwave(15*12000)
character datetime*13,message*22 character datetime*13,message*22
save s,dd
this%callback => callback this%callback => callback
write(datetime,1001) nutc !### TEMPORARY ### write(datetime,1001) nutc !### TEMPORARY ###