optimize_fft_speed — Optimize the runtime of the FFT.
optimize_fft_speed determines a method that achieves an
optimum runtime of the FFT for an image of size
Height. The data that are determined for
one image size do not influence the methods used for other image
optimize_fft_speed can be called
multiple times with different values for
Height to achieve an optimum runtime for all image sizes
that are used in an application. The parameter
determines the thoroughness of the search for the fastest method.
Mode = 'standard' a fast search is used,
which typically takes a few seconds. The method thus determined
results in very good runtimes, which are not always optimal. For
Mode = 'patient' a more thorough search is
performed, which typically takes several seconds and in most cases
leads to optimum runtimes. For
'exhaustive' an exhaustive search is performed, which
typically takes several minutes and always results in the optimum
runtime. In most applications,
'standard' results in the best compromise between the
runtime of the FFT and the time required for the search of the
optimum runtime. The data determined with
optimize_fft_speed can be saved with
write_fft_optimization_data and can be loaded with
Please note that this optimization is performed for the particular computer on which the operator is called. The results are not suited to be transferred and used on other computers unless they have the same hardware and software configuration including the driver versions.
optimize_fft_speed influences the runtime of the following
operators, which use the FFT:
Width of the image for which the runtime should be optimized.
Default value: 512
Suggested values: 128, 160, 192, 256, 320, 384, 512, 640, 768, 1024, 2048
Height of the image for which the runtime should be optimized.
Default value: 512
Suggested values: 120, 128, 144, 240, 256, 288, 480, 512, 576, 1024, 2048
Thoroughness of the search for the optimum runtime.
Default value: 'standard'
List of values: 'exhaustive', 'patient', 'standard'
optimize_fft_speed returns TRUE if all parameters are
correct. If necessary, an exception is raised.