octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #62358] Performance of Matrix Multiplication s


From: Arun Giridhar
Subject: [Octave-bug-tracker] [bug #62358] Performance of Matrix Multiplication significantly slower in 7.1.0 compared to 6.1.0
Date: Mon, 25 Apr 2022 10:07:51 -0400 (EDT)

Follow-up Comment #7, bug #62358 (project octave):

@jwe, since the OpenBlas library is the same across all Octave versions for
me, I ascribed the difference in performance to a mix of interpreter speed and
any other changes made to the libinterp library. To eliminate the "for i =
1:100" loop:

  tic;
  c = a*b;  ## replicated 100 times
  t = toc;


A variant with cputime is:

    start = cputime;
    c = a*b;  ## replicated 100 times
    finish = cputime;
    t = finish - start;
    mf(j) = 1999 * 100/t;


The trend is the same as before though. Octave 8.0.0 and 7.1.0 (no major
difference):

octave:3> bench_mmult_noloop
N = 1000
Method 2: MEAN GFLOPS single: 442.26854
Method 2: MAX GFLOPS single: 444.24100


Octave 6.1.0 and 6.4.0: (no major difference this time)

octave:3> bench_mmult_noloop
N = 1000
Method 2: MEAN GFLOPS single: 466.00226
Method 2: MAX GFLOPS single: 467.94603


The above were with tic/toc. The cputime variant gives lower numbers (divided
by the number of CPU cores roughly) but the trend is still the same, being 5%
to 7% slower for 7.1.0 compared to 6.4.0.

Bisection is difficult in the range from 6.4.0 to 7.1.0 because of changed
libraries or missing files like this one:

config.status: error: cannot find input file: `oct-conf-post-private.in.h'

Does anyone know how to work around that?


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?62358>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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