This is along the chat on where J is going. Several days for fun I tried
inverting a 1000 by 1000 matrix on my phone. Surpries! It worked.
So, curious how it compares to my PC with all the speed-up goodies on J7 I
tried it on my laptop and compared answers and speed. Here is what I got on
my laptop:
m=:<:+:?1000 1000$0
5 5{.m
0.244943 _0.350586 0.81565 _0.873687 _0.22676
0.187421 _0.0369276 0.8581 0.0878114 0.316252
0.0508902 _0.574068 0.550232 0.321653 0.862762
_0.538376 _0.420481 0.953784 _0.477318 _0.757485
_0.271067 _0.671161 0.155373 0.235114 0.644138
6!:2 'mi=:%.m'
0.644146
5 5{.mi
_0.477989 0.204493 0.335311 _0.0862012 _0.532058
_0.0471684 _0.0873343 0.0164066 0.0229872 0.113494
0.210663 _0.0220009 _0.144076 0.0340163 0.110479
0.00127678 0.0436344 _0.0321962 0.000114242 _0.0566062
_0.462309 0.246131 0.403709 _0.0947628 _0.582318
6!:2 '5 5{.mi+/ .*m'
0.153754
6!:2 'a=.mi+/ .*m'
0.151573
5 5{.a
1 2.07361e_11 1.93219e_11 2.13976e_11 _2.96065e_11
2.21395e_12 1 _1.11976e_12 _8.85736e_13 9.80493e_13
2.5715e_11 _7.70928e_12 1 _7.87648e_12 1.09608e_11
_7.3036e_13 2.05738e_13 1.82535e_13 1 _3.58158e_13
_7.85023e_11 2.36557e_11 2.17788e_11 2.43485e_11 1
Then I tried the same thing on my phone. In both cases I started from an
initial load of J. The random numbers on the phone appeared the same as
those on my laptop, at least the 5 by 5 top corner. Hard to see much bigger
on the phone. The phone was almost as fast.
Invert time on phone: 0.913882
Invert time on PC: 0.644146
Dot product on phone: 0.176178
Dot product on PC: 0.151573
I compared the mi on the phone with that of the PC, at least the 5 by 5 top
corner. The answers displayed the same to the limit of the default
precision of display. When I compared the dot product of mi and m of course
the diagonals all displayed as 1 on both. But the non-diagonals showed
slight variations. And those were closer to zero than those from the PC.
My PC is a few years old, but it does have AVX. It is running Windows 10.
JVERSION
Engine: j807/j64/windows
Beta-b: commercial/2018-03-01T10:24:33
Library: 8.07.07
Qt IDE: 1.7.1/5.9.4
Platform: Win 64
Installer: J807 install
InstallPath: c:/users/don/j64-807
Contact: www.jsoftware.com
My phone is a Samsung S7 and the J version is J7 Beta. So I suspect it is
beta-a.
The AVX on my laptop is probably an older version, so maybe not as fast on
newer Intel I7 processors. And I don't know if matrix inverse on the PC
uses AVX or not. But what a surprise on the speed of my phone!
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm