new Toom-Cook 3-way code
Torbjorn Granlund
tege@swox.com
23 Aug 2003 13:39:38 +0200
[Background to gmp-devel readers: Paul just made improvements to
the toom3 multiply code, and is now working on gcd. I've been
suggesting that we extend the low-level mpn functions with some
combined operations like shift-add and shift-sub.]
Paul.Zimmermann@loria.fr (Paul Zimmermann) writes:
A different question is whether to extend the low level function
set somewhat. E.g., mpn_addmul_1 could be complemented with
mpn_addmul_2exp (or if we choose to call it mpn_addlsh).
(Analogously with mpn_submul_2exp/mpn_sublsh.)
If a += 2b is in practice the only power-of-2 multiplier that
will be used, perhaps we could implement just that. I expect
that to be faster on x86 then a general mpn_addmul_2exp.
A general mpn_addlsh (for a shift 0 <= k < GMP_NUMB_BITS) would be
highly welcome, especially in the mpfr addition.
Here are some first results on the gcd front:
norroy% ./gcd 50000 # 50000-limbs numbers
mpz_gcdnew took 6580ms
mpz_gcd took 34260ms
This is great news. You're busy hacking GMP these days!
When it comes to gcd, please coordinate with nisse@lysator.liu.se.
He recently mailed new code to gmp-devel@swox.com.
(I am ashamed to say that nobody reacted to his posting yet.)
--
Torbjörn