Review Request: BigInteger patch for efficient multiplication and division (#4837946)

Brian Burkhalter brian.burkhalter at oracle.com
Mon Apr 29 18:00:38 UTC 2013


Hi Tim,

On Apr 28, 2013, at 4:31 PM, Tim Buktu wrote:

> thanks for the update.

You're welcome.

>> This patch differs from the code inhttps://github.com/tbuktu/bigint.git. Notably I observed that Schonhage-Strassen multiplication and Barrett division are not present. Is this intentional and if so why would that be? Are the implementations of these additional algorithms not quite ready for contribution or is there a licensing issue perhaps?
> Schönhage-Strassen and Barrett have been tested by me. I believe Alan
> Eliasen also ran tests. There are no known bugs and there shouldn't be
> any licensing issues because I wrote the code myself.
> 
> The reason why I didn't include these two algorithms in the patch I
> posted here is because I wasn't sure if it was too much code to review.
> If that is not a problem and you'd rather use the full implementation,
> the four patched files are at
> 
> https://raw.github.com/tbuktu/bigint/master/src/main/java/java/math/BigInteger.java
> https://raw.github.com/tbuktu/bigint/master/src/main/java/java/math/MutableBigInteger.java
> https://raw.github.com/tbuktu/bigint/master/src/main/java/java/math/BigDecimal.java
> https://raw.github.com/tbuktu/bigint/master/src/test/java/BigIntegerTest.java

How much additional code is there for these two algorithms? Unless it is some daunting amount, then if you think that the code is of sufficient quality, my opinion would be that we might as well go ahead and review the most recent version. This would take longer of course, but I think less total time than doing it in two separate passes. Also, if these are not addressed now, it could be some time before separately reviewing the other two algorithms percolated to the top of the list.

> Let me know if there are any more questions.

Are the patched files listed above with respect to the current tip of the JDK8 repository?

Thanks,

Brian


More information about the core-libs-dev mailing list