bug-apl
[Top][All Lists]
Advanced

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

Re: Slow down, latest updates


From: Dr . Jürgen Sauermann
Subject: Re: Slow down, latest updates
Date: Mon, 4 May 2020 11:45:14 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:60.0) Gecko/20100101 Thunderbird/60.6.1

Hi Bill,

thanks a lot, that is very valuable information. I actually made that change trying to reduce the
number of bogus -Wmaybe-uninitialized warnings. I am somewhat surprised that this has such
a performance impact.

In the meantime I have filed a g++ bug report concerning
-Wmaybe-uninitialized, but it seems
like we may have to live with it for a while.

I have partly reverted the change that I made, please let me know if the problem is
fixed (SVN 1283).

Best regards,
Jürgen


On 5/4/20 3:49 AM, Bill Heagy wrote:
The change from 1273 to 1274 in Shape.hh after about line 65 appears to replace a constant with a structure (?I haven't really looked at what this all does).  Backing this out from SVN 1282 speeds my test program up (and also gets rid of the compiler warning).

On 5/3/20 10:49 AM, Dr. Jürgen Sauermann wrote:
Hi Bill,

I double-checked all differences between SVN 1273 and the latest SVN.
The only primitive changed was dyadic ∼ (WITHOUT) which is not
used in your function.

Therefore I assume the change in performance was caused by differences
in ./configure settings or other reasons beyond the source code. You could
send me your current *config.h*to have a look at.

Best Regards,
Jürgen


On 5/3/20 12:19 AM, Bill Heagy wrote:

On 5/2/20 1:53 PM, Dr. Jürgen Sauermann wrote:
Hi Bill,

I cannot reproduce this.

Did you run *./configure*after updating from SVN? Sometimes Makefiles slip
through and can cause performance differences that are then caused by differering
* ./configure* options. I normally use make developwhich turns many debug
features on which are turned off when using the default *./configure* options.

CXXFLAGS=-Werror=maybe-uninitialized ./configure

I tried using "make develop" but couldn't figure out how to get the Werror condition to apply.  I've been using "timer" from the "timer" workspace to get the timings.

It looks as if the problem started at svn 1274, the same one where I had to start disabling the warning.


I have changed your benchmark a little to show the time spent:

*∇rr←sol nn;T**
**T←⎕TS**
**n←1↓⍳nn**
**r←,2**
**l:**
**→(nn<(↑n)*2)⍴x**
**r←r,↑n←(~∨⌿0=⊃r|¨⊂n)/n**
**→l**
**x:**
**r←r,1↓n**
**rr←+/r**
**0.001×0 0 0 24 60 60 1000⊥⎕TS-T**
**∇**
**
**      ⊣sol 200000**
*

On 5/2/20 6:21 PM, Bill Heagy wrote:
For the last updates, my little test program has slowed down by a factor of more than 4, debian 32 and 64 bit.  (Same updates as the compiler problem appeared, I think.)

∇rr←sol nn
n←1↓⍳nn
r←,2
l:
→(nn<(↑n)*2)⍴x
r←r,↑n←(~∨⌿0=⊃r|¨⊂n)/n
→l
x:
r←r,1↓n
rr←+/r


sol 200000








reply via email to

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