[hpsdr] wisdom files
Warren C. Pratt
warren at wpratt.com
Sun Oct 26 17:14:49 PDT 2014
I notice there have been recent discussion of wisdom files. I think
that wisdom files are generally not well-understood and so I'd like to
add a few comments to the discussion.
Within our HPSDR console applications we perform many FFTs (Fast Fourier
Transforms), many times per second. To manage the CPU load required to
do that we need to optimize the way the FFTs are computed to the fullest
extent practical. We use the FFTW library <www.fftw.org> for our FFT
computations and it provides a utility that tries many FFT "plans,"
selects the most efficient plan, and stores that plan in a "wisdom"
file. A plan is developed for each size of FFT that we may wish to use.
This planning is done on the specific target computer. Because of
differences in CPUs and data paths, a plan that is best on one computer
may not be the best for another computer.
Technically, each time we recompile the application for a new release,
we should also require recomputing the wisdom file. A recomputation
will automatically be triggered if the wisdom file is not found in the
specified directory. In practice, however, we don't force a
recomputation for each new release and I doubt that you will notice much
difference in performance if you delete the wisdom file between
releases and let it re-build the next time the application is opened.
There was a time a few months ago (sorry, don't remember between which
two releases), when we changed the contents of the wisdom file. At the
point we came out with the release requiring the new contents, it was
essential to delete the file and let it rebuild. That was made very
clear in the announcement of that particular new release.
Also, be sure not to confuse the wdspWisdom file with the database.xml
file which must often be reset/replaced when a new release comes out.
These are two very different things.
Hope that helps explain what this is all about.
73,
Warren NR0V
More information about the Hpsdr
mailing list