help-octave
[Top][All Lists]
Advanced

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

Re: [Octave 5.2.0 @ Ubuntu 20.04] Long duration of complex matrix invers


From: Thomas D. Dean
Subject: Re: [Octave 5.2.0 @ Ubuntu 20.04] Long duration of complex matrix inverse
Date: Sun, 29 Mar 2020 13:52:46 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1

On 2020-03-29 07:02, Dmitri A. Sergatskov wrote:


On Sun, Mar 29, 2020 at 8:58 AM KamilStawiarski <address@hidden
<mailto:address@hidden>> wrote:


     >> inv(randn(6,6)+randn(6,6)*i) <- still running.

    It seems that this occures with matrices larger than 5x5.

    Can somebody check occurrence of this at your copy?


octave:1> a=(randn(5000) + i*randn(5000));
octave:2> whos a
Variables visible from the current scope:

variables in scope: top scope

    Attr Name        Size                     Bytes  Class
    ==== ====        ====                     =====  =====
    c    a        5000x5000               400000000  double

Total is 25000000 elements using 400000000 bytes

octave:3> tic; inv(a); toc
Elapsed time is 3.61655 seconds.
octave:4>

Your blas library (atlas/openblas -- whatever you are using ) is broken.

Dmitri.
--




I may need a tune-up,

On a 4.2GHz i7-3930K, 16G RAM,
GNU Octave Version: 6.0.1 (hg id: 4f1d1b1d4afc)

octave:38> a=(randn(500) + i*randn(500));
octave:39> tic; inv(a); toc
Elapsed time is 0.196272 seconds.
octave:40> tic; inv(a); toc
Elapsed time is 0.180958 seconds.
octave:41> a=(randn(1000) + i*randn(1000));
octave:42> tic; inv(a); toc
Elapsed time is 1.41202 seconds.
octave:43> a=(randn(2000) + i*randn(2000));
octave:44> tic; inv(a); toc
Elapsed time is 12.0782 seconds.

I do not see atlas or blas in /usr/local/bin/octave
> ldd /usr/local/bin/octave
        linux-vdso.so.1 (0x00007ffd5ae97000)
        libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
        libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
        /lib64/ld-linux-x86-64.so.2
        libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6
        libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6
        libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1

> dpkg -l libblas*
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  libblas-dev:am 3.7.1-4ubunt amd64   Basic Linear Algebra Subroutines
ii  libblas3:amd64 3.7.1-4ubunt amd64

I may be using the ubuntu version of blas, libblas.so.3.7.1

> ldconfig -p | grep libblas.so
libblas.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libblas.so
And, following the links...
/usr/lib/x86_64-linux-gnu/libblas.so ->
/etc/alternatives/libblas.so-x86_64-linux-gnu
/etc/alternatives/libblas.so-x86_64-linux-gnu ->
/usr/lib/x86_64-linux-gnu/blas/libblas.so
/usr/lib/x86_64-linux-gnu/blas/libblas.so -> libblas.so.3.7.1

Tom Dean


reply via email to

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