Toom-4.5 (aka Toom-5x4, Toom-6x3, Toom-7x2)

bodrato at bodrato at
Fri Oct 9 17:53:18 CEST 2009

Dear developers,

The new code for Toom-4.5 is ready. You can download it from my web-site at:

It's a tar.bz2 with 3 files:
toom4_5_mul.c: the core functions: toom54, toom63, toom72, interpolate_8pts
toom-tools.h : shouldn't be a .h, it contains a lot of "helper functions"
toom-main.c  :some main(), for testing purposes.

The "helper functions" should be optimised, for the many HAVE_NATIVE_...
to avoid too many #if branches in the core. The same functions will be
used also in the next coming Toom-6.5 ... so, please, give me all the
suggestions you can.

The function mpn_toom_interpolate_8pts... does not interpolate 8 pts...
because couple of points (+x,-x) where already "recomposed" in single
lines. Some small adaptations to this function would allow the use of the
same interpolation for toom44, toom53, toom62, but some speed-tests gave
negative results and I disabled this possible use.

To save some memory allocation, interpolation is a little trickier than
needed, an mpn_subrsh_n() function would help...

Please test, and let me know.



More information about the gmp-devel mailing list