help-octave
[Top][All Lists]
Advanced

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

ATLAS setup and benchmarks


From: Przemek Klosowski
Subject: ATLAS setup and benchmarks
Date: Tue, 17 Jul 2001 14:37:59 -0400

Perhaps this would help someone; I describe how we installed
Atlas-enabled Octave, plus provide some speed benchmarks. My platform:
Dual PIII 700MHz, 256kB cache, 512MB memory, RedHat 7.1

I downloaded atlas 3.2.1, and unpacked into /opt/ATLAS:

cd /opt/ATLAS
make config
                ...used defaults (SSE1, threads, default for everything)
make install arch=Linux_PIIISSE1_2    ... started at 14:40,  done around 17:00

To install:

    cd /usr/lib
    mv liblapack.a liblapack.a.from.lapack.RPM.provided.by.RH71
    ln -sf /opt/ATLAS/lib/Linux_PIIISSE1_2/lib*a .

The problem is that lapack RPM installs /usr/lib/liblapack.a as well
as liblapack.so's. I just replaced lapack.a (UGH!)

redoing octave:

cd /opt/octave-2.1.34
make distclean         (to avoid cached configs from other systems, ahem).
./configure
make -j 2

'make check'  takes 
real    1m10.193s
user    0m40.070s
sys     0m25.950s

For comparison, octave 2.1.34 with regular BLAS, 'make check' takes 
real    1m37.472s
user    0m59.510s
sys     0m31.060s

And other tests:
                                          ATLAS     old BLAS  MATLAB 6
tic;hilb(30)*invhilb(30);toc         ans = 2.1666    3.7215    0.1762
tic;hilb(100)*invhilb(100);toc       ans = 78.933    135.08    0.3390
tic;a=rand(20,20000);b=svd(a);toc    ans = 0.89392   1.1263    1.0236
tic;a=rand(20,200000);b=svd(a);toc   ans = 9.3824    11.664   10.4996
tic;a=rand(2000,2000);b=prod(a);toc  ans = 3.8270    3.9275    1.3044
tic;a=rand(4000,4000);b=prod(a);toc  ans = 15.277    15.670    4.6598
tic;a=rand(500,500);b=inv(a)*a;toc   ans = 4.9955    9.8788    2.3128
tic;a=rand(1000,1000);b=inv(a)*a;toc ans = 40.669    80.180   15.4757

Not too shabby---factor of two improvement, within a factor of 2-3 of
matlab, except for hilb, which they must have in some optimized form
(octave scales like n^3 with size, matlab scales like less than n)





-------------------------------------------------------------
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]