DFT vs FFT in Accelerate Framework vDSP

Hi all,

I'm implementing FFT using Accelerate FW vDSP functions. I noticed the comment of FFT that says "DFT should be used instead where possible". Does anyone know the reasonign for this? Tradionally FFT is the fast implementation of the DFT.

Just wondering should I use the DFT functions if they are faster than the FFT.

Cheers!

Post not yet marked as solved Up vote post of vesap Down vote post of vesap
1.9k views

Replies

"Use the DFT routines instead of these wherever possible." Wondering the same thing right now.

+1

+1


Anyone from Apple care to explain?

Both interfaces are "fast" in the sense of "FFT" (n log n complexity). The DFT interfaces are newer and a little bit easier to use correctly, and support some lengths that the older FFT interfaces cannot.

The DFT routines will use the FFT algorithm when the size allows. As @stephencanon mentions, the DFT API is simpler, plus there are new DFT routines that support working directly with interleaved data, see: https://developer.apple.com/documentation/accelerate/performing_fourier_transforms_on_interleaved-complex_data