Vote for faster Java math functions

A little rallying cry - vote on this RFE so it can be given a higher priority:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5005861

It currently has 15 votes. Another 100 and it can be in the top 25.

The work for this has actually been done - see some posts by Azeem Jiva in the Performance Tuning board. Unfortunately, since it’s not as high priority as a bug fix, it may be some time before it’s actually available (worst case, the 1.6 JVM in 18 months or so). So if we vote this issue up, it should get integrated sooner.

Adding comments would probably help too.

As a side note, some of intrinsics might make it into an update release (1.5.0_xx).

…except that Structs are more useful!

Cas :slight_smile:

[quote]…except that Structs are more useful!

Cas :slight_smile:
[/quote]
On the other hand, the intrinsics stuff requires no recoding or anything, and is already done (just not available). If structs do happen, it’ll probably be JDK 7 at the earliest…

PS I wrote a proposal for a language idea to some guys at Sun that’d probably give you the same benefits as structs, but would have a number of other benefits (in HPC and multimedia in particular). Unfortunately, its almost certainly harder to add than structs. The main problem probably being fitting it into the Java bytecode specification.

There’s no real pressing need to vote for intrinsics and such though, as Sun are already working on it and committed to it. It’ll happen in its own time and voting won’t make it any quicker…

Cas :slight_smile:

Ahem …

http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=Tuning;action=display;num=1093612337

[quote]If structs do happen, it’ll probably be JDK 7 at the earliest…
[/quote]
If there was no language change required, it could be done much earlier. The performance advantage could be obtained without changing the language, albeit with less convenience.

[quote]There’s no real pressing need to vote for intrinsics and such though, as Sun are already working on it and committed to it. It’ll happen in its own time and voting won’t make it any quicker…

Cas :slight_smile:
[/quote]
As far as I know, the actual development work is 100% done. Despite that we might have to wait a long time to actually get it.

It’s not going to be in 1.5.0 FCS and might not appear at all in a production release until we get to 1.6.0. If it gets more votes it’ll get a higher priority, and so we should then see it released earlier (eg a 1.5.0_0x bug-fix release).

Though I don’t personally have a pressing need for this, I thought it was pretty dumb that we’d have to wait so long to be able to use a speed boost that was already done.

Yeah, it’s a general trade off - can do case by case work-arounds and hacks to fix the most pressing cases, or use language (or API) features to give a general purpose solution. Work arounds can be done much faster, but are less useful.

Accellerating a (carefully designed) struct API could give all of the performance gains expected for any use of a language level struct. All it would lack would be programmer convenience.