0

I'd like to compute the throughput of FFT and IFFT using cuFFT. I think that it should be O(B n log n) where n is the signal length and B is the batch size. The throughput in GFLOPs should be = 10^-9 * B * N * log N * c / runtime.
The thing is how to find out c (the constant here). I found some people use c = 2.5 in the case of FFT, and c = 5 in the case of IFFT. Is this correct?

Sullivan Risk
  • 319
  • 1
  • 4
  • 21
  • 2
    The c = 5 number is also used [here](http://www.fftw.org/speed/method.html) which is merely a definition of a benchmark measurement. It's not clear what you mean by "correct". I think c = 5 is commonly used. Note the disclaimer there: "This is not an actual flop count; it is simply a convenient scaling, based on the fact that the radix-2 Cooley-Tukey algorithm asymptotically requires 5 N log2(N) floating-point operations. " – Robert Crovella Feb 08 '16 at 17:18
  • 2
    For the FFT c is 5 for a complex value transform and 2.5 for a real value transform. Closed as a duplicate of an earlier question – talonmies Feb 08 '16 at 18:40
  • Thanks for the answer. – Sullivan Risk Feb 08 '16 at 19:01

0 Answers0