The 'mm' routine below has exactly the sort of error that Eric predicted.  c is passed in to cd as a boxed argument, and the code expects c to have been modified.  On 8.07, it won't be modified. You have to extract the return valueout of the boxed result of cd.  I think in this case you could replace the last 2 lines

dgemm (,'N');(,'N');k;k;k;(,2.5-1.5);y;k;x;k;(,1.5-1.5);c;k
c

with

_2 {:: dgemm (,'N');(,'N');k;k;k;(,2.5-1.5);y;k;x;k;(,1.5-1.5);c;k

(untested).  We need a citizen to go through the library, making the needed changes.

Henry Rich

PS There is another way to fix the problem, moving less data, but unless you read the cd description carefully you won't see it (and if you don't read it carefully, you shouldn't use it)


On 5/30/2018 10:20 PM, bill lam wrote:
multiple core support was not enabled during building j engine binary,
otherwise  gflop for j matrix product can be 2 or 3 times better depending
the number of core available.

On Thu, May 31, 2018, 2:39 AM Bill Heagy <[email protected]> wrote:

Maybe related: latest j src, debian intel 32.  I just run this
occasionally.  Ignore the flops: it's a slow machine.  However, it
appears to do the computation ok, it just returns "0"'s for c2.



     NB. from (email to jprogramming): bill lam <[email protected]>
     NB. test and compare gigaflops with blas/lapack

     dgemm=: 'liblapack.so.3 dgemm_ > n *c *c *i *i *i *d *d *i *d *i *d
*d *i'&cd

     mm=: 4 : 0
k=. ,{.$x
c=. (k,k)$1.5-1.5
dgemm (,'N');(,'N');k;k;k;(,2.5-1.5);y;k;x;k;(,1.5-1.5);c;k
c
)

     'A B'=:0?@$~2,,~4096
     t1=: 6!:2'c1=: A+/ .*B'
     echo ' GFlop ',~ 0j3": 2*(4096^3)%(t1)*1e9
0.456 GFlop
     t1=: 6!:2'c2=: A mm B'
     echo ' GFlop ',~ 0j3": 2*(4096^3)%(t1)*1e9
1.218 GFlop
     echo c1-:c2
0
     4!:55 ;: 'dgemm mm A B t1 c1 c2'
1 1 1 1 1 1 1



Note the "0" on the comparison check at the end.

On 2018-05-30 01:16 PM, J. Patrick Harrington wrote:
Eric,
   That's indeed correct. The output from j807 on the mac mini is wrong,
even though it dosen't crash:
     JVERSION
Engine: j806/j64nonavx/darwin
Release: commercial/2017-11-06T10:18:00
Library: 8.06.09
Qt IDE: 1.6.2s/5.6.3
Platform: Darwin 64
.... here's what it should do
── (5 of 15) Examples ───────────────────────────────────────
Here is a simple example:
)
     fftw i.8
28 _4j9.65685 _4j4 _4j1.65685 _4 _4j_1.65685 _4j_4 _4j_9.65685
... and
require 'numeric'
     clean (dfft - fftw) i.8
0 0 0 0 0 0 0 0

But under j807:
     JVERSION
Engine: j807/j64nonavx/darwin
Beta-e: commercial/2018-05-25T12:55:54
Library: 8.07.15
Qt IDE: 1.7.1/5.9.5
Platform: Darwin 64
.... we get
── (5 of 15) Examples ───────────────────────────────────────
Here is a simple example:
)
     fftw i.8
0 0 0 0 0 0 0 0
and ...
require 'numeric'
     clean (dfft - fftw) i.8
28 _4j9.65685 _4j4 _4j1.65685 _4 _4j_1.65685 _4j_4 _4j_9.65685

The results further along under j807 are just garbage, e.g.,

── (10 of 15) Examples (ctd) ────────────────────────────────
)
     A=: j./ ?. 1 + i. 2 3 4 5 6 7 8

     $A
3 4 5 6 7 8

     $B=: fftw A
3 4 5 6 7 8

     $C=: ifftw B
3 4 5 6 7 8

     +/ , clean A - C      NB. A matches C
1.01974e8j3.05017e8

On Wed, 30 May 2018, Eric Iverson wrote:
My guess is that the lab always fails in 807 due to incorrect cd
usage. The
failure can be a crash or wrong answers.

The lab running to completion does not mean that things are OK.

Someone needs to follow the code carefully in order to correct the cd
usage.

One possibility is to step through 807 side-by-side with 806 and see
where
things go bad.




On Wed, May 30, 2018 at 11:53 AM, J. Patrick Harrington
<[email protected]>
wrote:

My last message about my linux (Ubuntu) laptop with missing labs was my
error -- I had somehow started the j805 engine. Using the right files:
    JVERSION
Engine: j807/j64/linux
Beta-e: commercial/2018-05-25T11:59:34
Library: 8.07.15
Qt IDE: 1.7.1/5.5.1
Platform: Linux 64
Installer: J807 install

I get the same crash after step 6 of the FFT as I do in windows 807.
It is
only on my mac mini that the lab runs correctly under 807. The lab
works
OK on all machines under j806.

On Wed, 30 May 2018, bill lam wrote:

I can duplicate the crash on Windows. I should be related to cd
changes in
j807.But I can't understand the covering verbs  in fftw. It looked
as if
it
is not well organized. Maybe someone can come to rescue.

It looks like it just being lucky for no crash in linux and mac.

On Wed, May 30, 2018, 5:38 PM 'Mike Day' via Programming <
[email protected]> wrote:

Similar here for an avx machine,  running Windows 10,
with processor: AMD A10-7300 :-

JVERSION

Engine: j807/j64/windows

Beta-e: commercial/2018-05-25T12:07:57

Library: 8.07.15

Qt IDE: 1.7.1s/5.9.5

Platform: Win 64

Installer: J807 install

InstallPath: c:/d/j807

Contact: www.jsoftware.com


The FFT lab gets as far as displaying


"── (9 of 15) Examples (ctd) ─────────────────────────────────

In general, the arguments to fftw and ifftw are complex,

multidimensional arrays.


The next section computes the FFT on a random complex,

6-dimensional array of shape 3 4 5 6 7 8. This may take a few

seconds to run.

)"


and then crashing.


FYI,


Mike




On 29/05/2018 21:57, J. Patrick Harrington wrote:
Just installed j64-807 (nonavx) on an old windows machine.
Trying some things, I ran the Fast Fourier Transform lab. As soon
as it
got to the part where it should compute a complex transform, it
crashes.
That lab runs fine in under j64-806 (nonavx).

On Sat, 26 May 2018, Eric Iverson wrote:
The 807 beta-e zip install packages for windows/linux/macos are
available.

Henry has done a lot more work to exploit virtual blocks and to
make
better
use of cache memory.

For details, see:
http://code.jsoftware.com/wiki/System/ReleaseNotes/J807

This beta is stable and, except for production work, we urge you
to
move to
it now.

Help make the final release solid!
------------------------------------------------------------
----------
For information about J forums see http://www.jsoftware.com/forum
s.htm
----------------------------------------------------------------------
For information about J forums see
http://www.jsoftware.com/forums.htm



---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

----------------------------------------------------------------------
For information about J forums see
http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see
http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm


---
This email has been checked for viruses by AVG.
http://www.avg.com

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to