More about FFT/DFT¶
Fast Fourier Transform (FFT) can be used to perform:
- Convolution (including convolution reverberation)
 - Cross-correlation and auto-correlation
 - Applying large FIR filters
 - Sample rate conversion
 - Spectrum visualization
 - Large integer multiplication
 - Wavelet transform
 - and many other algorithms
 
Often FFT is the most efficient way to perform each of these algorithms.
About KFR DFT implementation¶
KFR implementation of the FFT:
- is fully optimized for X86, X86-64, ARM and AARCH64 processors
 - uses vector intrinsics (if available for cpu)
 - supports both single- and double precision
 - can cache internal data between calls to speed up plan creation
 - can do forward and inverse FFT without a need to create two plans
 - can be used for complex-to-complex, real-to-complex and complex-to-real 1D transforms
 - doesn’t require measure FFT performance at runtime and to find an optimal configuration
 - has special implementations for FFT sizes up to 256
 - has no external dependencies
 - is thread-safe, no global data
 - is written in modern C++14
 - is open source (GPL v2+ license)