[Jprogramming] [Jsource] Performance improvement in Jengine - status report
'Pascal Jasmin' via Programming
programming at jsoftware.com
Wed May 25 23:34:51 UTC 2016
perhaps these 2 basic comparisons, (the explicit one processes left to right)
reduce =: 1 : '<"_1@[ u &.>/(>@:)@:, <@:]'reducE =: 1 : (':';'o=. y for_i. x do. o =. i u o end.')
reduce is equivalent to /@:, when x and y are the same shape.
----- Original Message -----
From: Henry Rich <henryhrich at gmail.com>
To: programming at jsoftware.com
Sent: Wednesday, May 25, 2016 6:58 PM
Subject: Re: [Jprogramming] [Jsource] Performance improvement in Jengine - status report
Those are good candidates. My top 3:
http://rosettacode.org/wiki/Maze_solving#J
http://rosettacode.org/wiki/Tonelli-Shanks_algorithm#J
http://rosettacode.org/wiki/Superpermutation_minimisation#J
I will look at timing those, and you can look into finding more like them.
Henry Rich
On 5/25/2016 5:08 PM, Raul Miller wrote:
> On Wed, May 25, 2016 at 4:34 PM, Henry Rich <henryhrich at gmail.com> wrote:
>> We would like a benchmark that uses scalar code heavily. This is the kind
>> of application that you might say is 'not good for J'. We'd like to make J
>> better on those applications. If you have some old FORTRAN-style code
>> written in J, we'd like to see it.
> A quick look through rosettacode finds some plausible possibilities.
>
> Note, however, that these are not necessarily "purely scalar". For
> example, when indexing a matrix you need to use a boxed pair. This is
> something that would be "scalar" in fortran, but goes a different
> route in J. Or maybe we're using a rank operator to represent an inner
> loop. For example:
>
> http://rosettacode.org/wiki/Solve_a_Holy_Knight's_tour#J
>
> So, anyways, I do not actually know how many of these are actually in
> the ballpark of what you need. Some of these might also need to use
> different data to really exercise the machine. But if you could pick
> out a "top 3" for me, and maybe identify any obvious data
> deficiencies, I might be able to see if I can find some more things
> that seem to fit that pattern:
>
> http://rosettacode.org/wiki/Cipolla's_algorithm#J
> http://rosettacode.org/wiki/Dijkstra's_algorithm#J
> http://rosettacode.org/wiki/Knight's_tour#J
> http://rosettacode.org/wiki/Levenshtein_distance#J
> http://rosettacode.org/wiki/Maze_solving#J
> http://rosettacode.org/wiki/Self-referential_sequence#J
> http://rosettacode.org/wiki/Superpermutation_minimisation#J
> http://rosettacode.org/wiki/Tonelli-Shanks_algorithm#J
>
> I hope this helps,
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
More information about the Programming
mailing list