Re: [wsjt-devel] FFTW3 Wisdom

2014-11-21 Thread John Nelson
Hi Bill,

I can respond to (1):

Because of pointer problems, Joe implemented wisdom.c to solve the 
export_wisdom problem I was having.   I followed up by adding import_wisdom to 
wisdom.c with the result that f77_wisdom.f90 is no longer required.   wisdom.c 
now deals directly with fftw calls.

--- John G4KLA
--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751iu=/4140/ostg.clktrk
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] FFTW3 Wisdom

2014-11-21 Thread Joe Taylor
Hi Bill and all,

 1) What is the purpose of f77_wisdom.f90 and wisdom.c? I ask because
 they seem to duplicate functionality that is already available directly
 from the FFTW3 library in both C and Fortran form via the fftw3.h and
 fftw3f.f03 include files.

File fftw3f.f03 is apparently fairly new.  It did not exist when last I 
messed around with FFTW wisdom.  Probably we can use it now; we made 
wisdom.c because the older wrapper, invoked through f77_wisdom.f90, 
failed on OS X.

 2) I see that you have named the wisdom data file as jt9_wisdom.dat.
 Looking at the FFTW implementation it would seem that a single wisdom
 data file for all applications is not a great overhead. The default
 system wisdom data file (not available on Windows) is named
 /etc/fftw/{wisdomf,wisdom,wisdoml} and is intended to contain many
 optimized plan choices for various type and sizes of transform. I would
 have thought that a single wisdom data file for all WSJT-X programs and
 utilities would be sufficient. Was your intention to have a different
 wisdom data file for wsjt and jt9?

Revision 4617 also reads/writes wsjtx_wisdom.dat.  We're presently 
running two processes in parallel, jt9[.exe] and wsjtx[.exe].  We don't 
want them writing to the same file, possibly over-writing information 
that the other process wanted to save.

It will be trivial to change to one file if/when we change to a 
single-process model.

System wisdom is convenient in *nix but not very convenient in Windows. 
  The whole idea is not particularly useful when we are using oddball 
FFT lengths like some of those used in WSJT-X, e.g., 77175, 672000, and 
884736.

 3) I was also thinking of adding a header line to the exported wisdom
 data file including the program version. Something like:

 version:last-change-svn-revision{-dirty,-local}

Could be done, but my informed guess is that it's not worth the effort. 
  These optimizations lead to speed improvements that are rather minor. 
  The code is already carefully tuned and optimized; the FFTs do not 
dominate execution times.

-- Joe

--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751iu=/4140/ostg.clktrk
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel


Re: [wsjt-devel] FFTW3 Wisdom

2014-11-21 Thread John Nelson
Hi Joe,

Bugs introduced in wisdom.c

jt9.f90   call export_wisdom(wisfile(1:n)//char(0)) 
1 argument

wisdom.c void export_wisdom_(char fname[], int len) 
2 arguments


Same for call import_wisdom   (2 arguments)
   
 void import_wisdow   (3 arguments)

--- John G4KLA



--
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration  more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751iu=/4140/ostg.clktrk
___
wsjt-devel mailing list
wsjt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wsjt-devel