Math project or subproject

Alan Eliasen eliasen at
Fri Jan 29 22:14:36 UTC 2010

On 01/29/2010 02:02 AM, Dmitry Nadezhin wrote:
> In my previous post I discussed choice criteria for performance
> enhancements in math libraries.
> I guess that in production projects Jdk 1.6 and Jdk 1.7 the main choice
> criteria is stability.
> This explains why changes to math stuff in Java are almost impossible.
> Here is a pair of examples:
> 1) The Karatsuba multiplication in BigInteger

    I'm the submitter of these patches which are almost two years old in 
a couple of weeks, with still no approval.  And these multiplication 
patches are only a small part of the work that needs to be done on 
BigInteger.  I also have orders-of-magnitude improvements for pow() and 
toString(), both of which use extremely slow algorithms.  I was asked to 
make patches as small as possible so they could be reviewed quickly, so 
my submitted patches have just been for multiplication.

    Joe Darcy, what is your current status on reviewing these patches? 
Can you delegate this to Dmitry or Xiaobin if you don't appear to have 
time to do it?

> I respect our "Java Floating-Point Czar" for keeping stability of
> mainstream Java.
> However, I suspect that some OpenJdk users prefer enhancements and bug
> fixes of old bugs in math libraries in exchange for a small risk of
 > new bugs.

    I think OpenJDK *contributors* need some evidence that their 
contributions are being looked at, or they'll stop contributing, and/or 
move to other platforms with better numerics.  Some of us have spent 
literally weeks of unpaid work improving performance, getting 
world-class outside reviewers to look over them and reduce Sun's 
workload, etc.  It's very depressing to wait over two years for approval 
of a well-known algorithm that is usually assigned as a homework 
assignment in undergrad courses.

> What about more rapid enhancement of OpenJdk math in some project
> related to but separate from OpenJDK 6 and (Open) JDK 7 ?
> This may be a new Math project or a subproject of the Da Vinci Machine
> Project.

    I'm all for improving Java's numerics.  Please keep me informed. 
I've already implemented a lot of missing algorithms.

   Alan Eliasen
   eliasen at

More information about the core-libs-dev mailing list