I agree. I'd like something that looks like FORTRAN translated to J.
I've seen a lot of that code on the Forum - where is it when you need
it? After looking at the control-structures code, I don't think they
have much effect on performance. There might be some gain to be had
from a super-fast path for handling (atom op atom).
I will run my timing tests using lint-on-lint and report that to the
Programming forum (within the next couple of days). Perhaps this should
be a regular part of the release process - I am not signing up to do that.
Since parser and bpctlz, I have been working on bug fixes rather than
performance. I think the new reference-count system, when it is
finished, will open the door to many other performance improvements.
I think I have cleared out around half of the open bugs, if you get all
my branches merged in.
Henry
On 5/23/2016 5:48 PM, Eric Iverson wrote:
The latest builds at download/jengine now include parser and bctlz.
Use the process implemented in the script jengine.ijs at that page to
install the beta-3 engine (or do in manually).
I think your timing results would be of interest to the group. And any
other timings of pet things people would like to do.
Lint is good because it is a real application. But it will change over
time and perhaps isn't as good a base line as fixed benchmark scripts
in the test suite that are defined to not change. (except perhaps for
included comments about past observations).
What I'd like, but am not sure makes sense, is artificial code, that
explicitly exercises the JE on scalar data (including control
structures). Or better yet, scalar solutions to real problems in areas
where J suffers the most.
On Mon, May 23, 2016 at 4:08 PM, Henry Rich <[email protected]
<mailto:[email protected]>> wrote:
As Marshall said, we decided to run lint on the source code for
lint (2 seconds approx.). I do it 50 times, then take the average
of the next 50 times. The performance is unpredictable enough
that you need to average over many runs.
I do not feel well qualified to make this choice officially. lint
is just a program I happen to know. If there are other ideas,
maybe we should have a suite of parser-heavy applications. Some
non-J-like beginner code might be useful at last.
I don't have a build with bpctlz and parser together, but I expect
about 10-11% improvement. Marshall's change, when it comes out,
will add a further several percent I expect.
Henry
On 5/23/2016 2:16 PM, Eric Iverson wrote:
Your recent JE changes (parser, bpctlz) should be accompanied
by some test scripts that demonstrate the improvements.
We need one or more test scripts that are not run as part of
the test suite, but rather are run by the user to compare
different releases.
These scripts should test interpreter-scalar performance, not
large array performance. Lots of parsing etc and only scalars.
I would like to run a script on the latest JE and then run it
on 804 and have something concrete to say about the new release.
Volunteers?
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm