At this time, the system wisdom cache will be read, but will not override the designed behavior of plan file usage by the original fCWT authors. This can result in unnecessarily re-computing plans and saving to local files even if a equivalent exists in the system wisdom cache at /etc/fftw/wisdomf.
Eventual Planned Functionality:
Using the fftwf-wisdom utility to pre-generate plans that can be used system wide can improve performance at run time. Generating the full canonical set of cases using fftw-wisdom -v -c -o wisdom takes many hours, but for the purposes of this library, we only need a subset of plans.
RfCWT::GenerateWisdom() is provided as a convenience function to generate the fftwf-wisdom commands for a defined set of threads. By default, the commands are printed to the console output, but specifying Execute = TRUE will use system(..., wait = FALSE) to execute them directly in parallel. Upon completion, the files can all be combined using the output of RfCWT::CombineWisdom().
Output of these commands is as follows. Upon completion, the user will need to generate the default directory for FFTW wisdom - /etc/fftw - if it does not exist, and then copy the output to this location.
At this time, the system wisdom cache will be read, but will not override the designed behavior of plan file usage by the original
fCWT
authors. This can result in unnecessarily re-computing plans and saving to local files even if a equivalent exists in the system wisdom cache at/etc/fftw/wisdomf
.Eventual Planned Functionality:
Using the
fftwf-wisdom
utility to pre-generate plans that can be used system wide can improve performance at run time. Generating the full canonical set of cases usingfftw-wisdom -v -c -o wisdom
takes many hours, but for the purposes of this library, we only need a subset of plans.RfCWT::GenerateWisdom()
is provided as a convenience function to generate thefftwf-wisdom
commands for a defined set of threads. By default, the commands are printed to the console output, but specifyingExecute = TRUE
will usesystem(..., wait = FALSE)
to execute them directly in parallel. Upon completion, the files can all be combined using the output ofRfCWT::CombineWisdom()
.Output of these commands is as follows. Upon completion, the user will need to generate the default directory for FFTW wisdom -
/etc/fftw
- if it does not exist, and then copy the output to this location.