PowerSDR Wisdom Files

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.

For recent releases of PowerSDR, the relevant files are kept in the folder "PowerSDR mRX PS".

If things seem to be working correctly, I'd say that you would not gain much by deleting the wdspWisdom file. However, most of the time when there's a new release it is advisable to delete the database.xml file. The announcement of a new release normally has a statement in it about whether the database file needs to be deleted or not.

(NR0V 26Oct14)

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License