octave-maintainers
[Top][All Lists]
Advanced

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

Re: move constructors likely a requirement


From: Rik
Subject: Re: move constructors likely a requirement
Date: Fri, 23 Aug 2019 22:01:03 -0700

On 08/23/2019 02:06 PM, John W. Eaton wrote:
> On 8/23/19 2:56 PM, Rik wrote:
>
>> The absolute best performer is still version 3.4.3 at 4.5 seconds which is
>> more than double the performance of the current result of 10.9 seconds.
>
> Do we have any idea what is responsible for most of the change?  Is it
> looking up functions?  Getting variable values?  Storing values in
> variables?  Something else?

Nothing that would amount to a 100% slowdown.

I ran the various tests you asked for earlier.  Removing OO lookup from
within the xfind routine saved about 7%.  That's interesting, but no where
near sufficient.  Assignment has gotten 5.6X slower between 3.2.4 and dev. 
I used bm.assign.m which is attached to bug #56752, but I reproduce it here

--- Code bm.assign.m ---
runs = 5;

cumulate = 0; b = 0; z = 0;
for i = 1:runs
  b = zeros (620, 620);
  tic;
    for j = 1:620
      for k = 1:620
        z = 13;
      end
    end
  timing = toc;
  cumulate = cumulate + timing;
end

## Total time
cumulate
--- End Code ---

The only thing it does is assign the static value 13 to the variable z.  In
3.2.4 this took 0.17 seconds and now it takes 0.96.

I think I would start investigations with this script.  Is it the creation
of a new octave_value for 13 every time?  Is it assignment?

I'll be out for the next couple of days,
Rik




reply via email to

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