RFR: 4837946 - Faster multiplication and exponentiation of large integers
david.r.chase at oracle.com
Fri May 17 12:56:12 UTC 2013
There's been a little pushback against that use of forkjoin, though (as the author of the CRC/Adler work it seems like a reasonable idea to me). One worry I have had is that in a larger context we are worried not just about speed, but also about efficiency; using 4 threads for a 3x speedup is in fact "less efficient" than using just 1 thread, but not by a lot. Using 32 threads for a 9x speedup is a good deal less efficient. (And note I am saying "threads", not "tasks", there are good reasons for breaking big jobs down into more tasks than threads, since not all tasks take the same time to finish and the straggler determines the overall time).
On 2013-05-17, at 4:23 AM, Sergey Kuksenko <sergey.kuksenko at oracle.com> wrote:
> Hi Brian,
> In the parallel thread I see a new implementation of CRC32 & Adler32. I don't mean new HW intrinsics, I mean parallel operation using ForkJoinPool. I think BigInteger operations may be a better candidate for such kind of parallelization. For example Karatsuba may be forkjoined naturally.
> Best regards,
> Sergey Kuksenko
More information about the core-libs-dev