cfftopt(3P) Sun Performance Library cfftopt(3P)NAMEcfftopt - compute the length of the closest fast FFT
SYNOPSIS
INTEGER FUNCTION CFFTOPT(LEN)
INTEGER LEN
INTEGER*8 FUNCTION CFFTOPT_64(LEN)
INTEGER*8 LEN
F95 INTERFACE
INTEGER FUNCTION CFFTOPT(LEN)
INTEGER :: LEN
INTEGER(8) FUNCTION CFFTOPT_64(LEN)INTEGER(8) :: LEN
C INTERFACE
#include <sunperf.h>
int cfftopt(int len);
long cfftopt_64(long len);
PURPOSEcfftopt computes the length of the closest fast FFT. Fast Fourier
transform algorithms, including those used in Performance Library, work
best with vector lengths that are products of small primes. For exam‐
ple, an FFT of length 32=2**5 will run faster than an FFT of prime
length 31 because 32 is a product of small primes and 31 is not. If
your application is such that you can taper or zero pad your vector to
a larger length then this function may help you select a better length
and run your FFT faster.
CFFTOPT will return an integer no smaller than the input argument N
that is the closest number that is the product of small primes.
CFFTOPT will return 16 for an input of N=16 and return 18=2*3*3 for an
input of N=17.
Note that the length computed here is not guaranteed to be optimal,
only to be a product of small primes. Also, the value returned may
change as the underlying FFTs become capable of handling larger primes.
For example, passing in N=51 today will return 52=2*2*13 rather than
51=3*17 because the FFTs in Performance Library do not have fast radix
17 code. In the future, radix 17 code may be added and then N=51 will
return 51.
6 Mar 2009 cfftopt(3P)