Info-Mac Archive Downloads: dev/lib/

Back to dev/lib/

FFT for RISC 1.1 (fft-library-11-ppc-cpp.hqx)

Download fft-library-11-ppc-cpp.hqx (38,094 KB)


From: green_jt@VSDEC.NL.NUWC.NAVY.MIL (John Green)
Subject: FFT for RISC 1.1

Enclosed is a stuffit archive of version 1.1 of my fft 'C' source code.
Now includes an already compiled shared library in case your compiler
doesn't like my code.
Revisions version 1.1:
Re-arranged to put fft routines in a shared library and changed
source file name to fftlib.c.
Removed some ugly optimizations that are no longer needed for
CodeWarrier.

Fast Fourier Transform routines. Routines are provided for the
complex forward and inverse transforms as well as for a real forward
transform. I coded these to optimize execution speed on a PowerPC
processor. Also included are some simple test programs which time the
FFTs. Compiled with Metrowerk's Codewarrier 7/8, my PowerMac 8100/80
executes a 2048 point real transform in about one millisecond. I would
definitly like to know the timing results with other compilers and
computers. Warning- treat this code as untested. Before you use these
routines in a program, be sure to test them for latent bugs!

This code is public domain, do anything you want to with it.

1024 Point complex FFT timings with best optimization:
0.8 ms. Powermac 8100/80, CodeWarrier.
0.36 ms. Powermac 9500/chipped to 150, CodeWarrier (thanks
to Robert Kay.)
2.7 ms Intel Plato 2 with Pentium P90, Visual C++
compiler, Windows 95.
1.7 ms Intel Plato 2 with Pentium P90, Intel's Native
Signal Processing FFT routine, Windows 95.