I welcome the chance to improve users' important programs. The
i.-family speedups were important for some programs we know about, but
not all. If anyone has an application where more speed would be
important to them, I encourage them to (1) use the Performance Monitor
to find the slow parts of the J code and improve them, and only then (2)
send me a standalone program that I can analyze to see what can be improved.
Henry Rich
On 4/24/2017 10:02 PM, Igor Zhuravlov wrote:
Last mt addon's version (0.10.0) got benchmarking capability, too. I've tried
it for J805 vs J806 comparison.
Host: CPU: Intel i7-4790, RAM: 16 Gb
J805 version: j805/j64/linux/release/commercial/www.jsoftware.com/
2016-12-11T08:02:52
J806 version: j64avx/linux/beta-1/commercial/www.jsoftware.com/
2017-03-09T10:14:43
Overall benchmark:
matrix size speed-up ratio
100 0.98x
150 0.97x
200 0.99x
300 0.98x
400 0.98x
500 1.03x
So overall performance remains essentially unchanged.
Per-verb one-to-one speed-up ratios reveals a performance redistribution
inside each overall benchmark. Say, speed-up ratios for n=500 are varying from
0.25x to 3.89x, has average 1.24x and forms 3 clusters:
centroid value verbs in cluster
0.28x 12 of 235 ( 5%)
0.96x 170 of 235 (72%)
2.35x 53 of 235 (23%)
Most speed-ups are noted in gq/q, mq/q, pow, qf/q and tri verb groups. Which
are heavily based on matrix product, are mainly row-wise and has minimal
housekeeping work.
Most slow-downs are noted in gq/z, mq/z, qf/z verb groups.
Result from brand J benchmark:
'i7-4790_J806avx' show_tests 'i7-4790_J805'
intsr intbr char float float0 test
1.49 2.42 4.23 1.08 3.09 a i. a
14.87 14.97 25.37 2.06 21.23 a i. b
3.61 8.03 8.37 5.28 10.92 b i. a
3.89 9.32 8.26 5.52 13.17 a e. b
7.81 14.46 23.59 2.04 21.41 b e. a
4.01 9.13 8.28 5.40 12.45 a (+/@:e.) b
3.35 6.85 8.18 38.22 13.13 a (e. i. 1:) b
2.18 2.44 3.67 1.05 1.05 ~.a
2.31 2.48 3.93 1.06 1.05 ~:a
2.92 5.00 1.43 1.07 1.07 /:a
1.81 1.34 1.39 1.06 1.07 /:~a
intsr intbr char float float0 test
1.63 3.66 4.77 1.20 5.33 a i. a
3.46 4.90 8.29 3.19 8.33 a i. b
4.10 8.67 8.13 5.52 12.28 b i. a
4.29 9.08 8.12 5.25 12.90 a e. b
3.13 4.97 8.04 3.18 8.26 b e. a
4.03 9.59 8.26 5.17 12.89 a (+/@:e.) b
1.06 3.65 7.08 17.05 13.05 a (e. i. 1:) b
1.47 3.50 4.05 1.19 1.18 ~.a
1.37 3.54 4.87 1.26 1.24 ~:a
1.14 1.13 1.33 1.14 1.12 /:a
1.53 1.16 1.37 1.14 1.11 /:~a
matrix multiply 4.33
--
WBR
Igor
On Mar 12, 2017, at 4:35 PM, Eric Iverson <[email protected]> wrote:
...
If you report an avx benchmark, please indicate the processor, as this
gives useful perspective.
----------------------------------------------------------------------
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