help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: interesting FFT benchmarking!


From: Dmitri A. Sergatskov
Subject: Re: interesting FFT benchmarking!
Date: Tue, 29 Jul 2003 10:35:21 -0600
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 Netscape/7.1

address@hidden wrote:



octave> A = rand(2048,2048); t0=cputime; B=fft(A); cputime;ans-t0
ans = 0.85000
octave> A = rand(2048,2048)+i*rand(2048,2048); t0=cputime;B=fft(A); cputime; 
ans-t0
ans = 0.55000


I get absolutely identical timing between real and complex:

octave:69> A = rand(2048,2048); t0=cputime; B=fft(A); cputime;ans-t0
ans = 0.74000
octave:70> A = rand(2048,2048)+i*rand(2048,2048); t0=cputime;B=fft(A); 
cputime;ans-t0
ans = 0.74000


A = rand(2048,2048)+i*rand(2048,2048); t0=cputime; B=fft(A); cputime; ans-t0

ans =
    0.8700

A = rand(2048,2048); t0=cputime; B=fft(A); cputime; ans-t0

ans =
    0.5600

I can reproduce that in Matlab:

>> A = rand(2048,2048); t0=cputime; B=fft(A); cputime; ans-t0

ans =

    0.5100

>> A = rand(2048,2048)+i*rand(2048,2048); t0=cputime; B=fft(A); cputime; ans-t0

ans =

    0.6500


I think I'll start adding small complex noises to my signals to get them
analysed faster! :) No kidding!!!

octave-2.1.50:130> A = rand(2048,2048);
octave-2.1.50:131> t0=cputime; B=fft(A); cputime; ans-t0
ans = 0.85000
octave-2.1.50:136> Anoise = A+i*e-100*ones(2048,2048);
octave-2.1.50:137> t0=cputime; B=fft(Anoise); cputime; ans-t0
octave-2.1.50:138> t0=cputime; B=fft(Anoise); cputime; ans-t0
ans = 0.54000

Cannot reproduce that:

octave:71> A = rand(2048,2048);
octave:72> t0=cputime; B=fft(A); cputime; ans-t0
ans = 0.71000
octave:73> Anoise = A+i*e-100*ones(2048,2048);
octave:74> t0=cputime; B=fft(Anoise); cputime; ans-t0
ans = 0.75000

This is octave-2.1.50 with included fft. Compiled by gcc-3.2.2 with -O2 
-mcpu=athlon-mp
(I did notice that compiling with -O3 produces slightly slower code for fft 
then with -O2,
I am wondering if smaller cache on Athlons to blame...).

Regards,

Dmitri.



-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]