How to efficiently implement algorithm similar to FFT?

5 visualizzazioni (ultimi 30 giorni)
I am implementing an algorithm similar to FFT. The only difference is that I'm using my own custom twiddle factors for the butterfly operation to combine smaller DFTs into larger DFTs which is implemented through multiplication of matrices.
However, I am not getting the same performance as the regular FFT built in function. Is it a function of how I'm writing my code?
  3 Commenti
Matt J
Matt J il 9 Mar 2013
Modificato: Matt J il 9 Mar 2013
The builtin FFT is also probably multi-threaded, whereas yours would not be.
John
John il 9 Mar 2013
I am trying to compare computational complexity between my algorithm and Matlab's algorithm. Despite the fact that Matlab's algorithm is much faster, the complexities appear the same. For example, for increasing sizes, they both have a computational complexity of O(n log n)

Accedi per commentare.

Risposta accettata

Matt J
Matt J il 9 Mar 2013
Modificato: Matt J il 9 Mar 2013
If you write your customized butterfly operations as sparse matrix multiplications (see the SPARSE command), you might be able to get the benefit of multi-threading, similar to the FFT command.

Più risposte (0)

Categorie

Scopri di più su Fourier Analysis and Filtering in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by