help-octave
[Top][All Lists]

## Re: FFT slow in 2.9?

 From: David Bateman Subject: Re: FFT slow in 2.9? Date: Sun, 04 Feb 2007 21:47:15 +0100 User-agent: Thunderbird 1.5.0.7 (X11/20060921)

```Matthias Brennwald wrote:
> Dear all,
>
> on my Mac (PowerBook G4), fft seems to be about four times slower in
> Octave 2.9.9 (binary from HPC) than in Octave 2.1.71 (binary from
> Fink). Also, 2.9.9 does not seem to use fft-wisdom (the same fft
> would be faster after the first run):
>
> on 2.9.9:
> octave:1> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 1.985802 seconds.
> octave:2> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 1.803986 seconds.
> octave:3> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 1.811325 seconds.
> octave:4> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 2.165604 seconds.
>
> on 2.1.71:
> octave:1> x=rand(1,2^20); tic; fft(x); toc
> ans = 0.76503
> octave:2> x=rand(1,2^20); tic; fft(x); toc
> ans = 0.50110
> octave:3> x=rand(1,2^20); tic; fft(x); toc
> ans = 0.50244
> octave:4> x=rand(1,2^20); tic; fft(x); toc
> ans = 0.49133
>
> and on Matlab 7.1:
>  >> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 0.751125 seconds.
>  >> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 0.492581 seconds.
>  >> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 0.473516 seconds.
>  >> x=rand(1,2^20); tic; fft(x); toc
> Elapsed time is 0.486890 seconds.
>
> Any ideas why this is?
>

Is this version linked to FFTW? If it isn't octave falls back to using
the old FFTPACK code that is in libcruft that as you've seen is about 4
times slower.. The absence of fftw_wisdom is a dead give away that FFTW
is missing.. Note that fftw_wisdom will disappear in 2.9.10 to be
replaced with a matlab compatible fftw function in any case.

D.

```