RFR: 8334755: Asymptotically faster implementation of square root algorithm [v35]
Raffaello Giulietti
rgiulietti at openjdk.org
Wed Jul 24 11:48:37 UTC 2024
On Wed, 24 Jul 2024 10:32:08 GMT, fabioromano1 <duke at openjdk.org> wrote:
>> I have implemented the Zimmermann's square root algorithm, available in works [here](https://inria.hal.science/inria-00072854/en/) and [here](https://www.researchgate.net/publication/220532560_A_proof_of_GMP_square_root).
>>
>> The algorithm is proved to be asymptotically faster than the Newton's Method, even for small numbers. To get an idea of how much the Newton's Method is slow, consult my article [here](https://arxiv.org/abs/2406.07751), in which I compare Newton's Method with a version of classical square root algorithm that I implemented. After implementing Zimmermann's algorithm, it turns out that it is faster than my algorithm even for small numbers.
>
> fabioromano1 has updated the pull request incrementally with one additional commit since the last revision:
>
> Made normalization consistent with that of the C code in the paper
The aim is not about having even more efficient code (yours is already faster than the existing algorithm), but to have simpler code.
The two denormalization code snippets, while based on the same underlying math, are quite different in shape. Having just one denormalization code should be easier to read, understand, check, compare to the paper, and (possibly) evolve.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/19710#issuecomment-2247702550
More information about the core-libs-dev
mailing list