OK, I started some tests on my 80-core machine. At
first I decided to run the exact same thing as what you ran
above.
As you can see, before I set the dyadic threshold, I got
the expected results. After setting it, the same command hangs
with 200% CPU usage. At the time I'm writing this mail, it's
been sitting like that for about 30 minutes or so.
Here's the log of what I did. GNU APL was compiled with
CORE_COUNT_WANTED=-3
∇Z ← NCPU
time LEN;T;X;tmp
[1] ⎕SYL[26;2]
← NCPU
[2] X ←
LEN⍴2J2
[3] T ← ⎕TS
[4] tmp ←
X⋆X
[5] Z←1 1 1
24 60 60 1000⊥⎕TS - T
[6] ∇
(⍳8) ∘.time
10⋆⍳7
0 0 1 7 40 414 4180
0 0 0 3 38 409 4178
0 0 0 4 39 412 4212
0 0 1 4 38 416 4204
0 0 0 5 39 417 4225
0 0 0 4 39 417 4232
0 0 0 4 38 417 4245
0 0 0 4 38 417 4241
)COPY 5
FILE_IO
loading )DUMP file
/home/emartenson/src/apl/wslib5/FILE_IO.apl...
1
FIO∆set_dyadic_threshold '⋆'
8888888888888888888
(⍳8) ∘.time
10⋆⍳7
(Hangs here)
Regards,
Elias