Hi all,

I'm currently looking for fast ways to sum exponential-type Taylor
series in fixed point arithmetic using mpz (see
http://code.google.com/p/fastfunlib/)). I'm mainly interested in low
precision (say a few hundred or thousand bits), so I don't think
binary splitting is worthwhile (but I could be wrong here).

The most important missing ingredient is a function that does

mpz_mul(z, x, y);
mpz_tdiv_q_2exp(z, z, p);

efficiently in a single step. For other purposes, it should ideally
only use the necessary high limbs of x and y so that x can be a fixed
point value at much higher precision, without the need to place a
truncated copy in a temporary variable. If it helps, it would be
possible to choose p so as to be a multiple of the limb size.

Secondly, there are a lot of divisions by small integers (1, 2, 3,
...). I'm not sure how much they contribute in total, but if there is
a way to speed up the first few with precomputation, it could help.

A single-step x = x + y/k, k a small integer, would also be useful if
it could be done faster.

Finally, for fixed-point square root, it can probably be done faster
than padding with zeros and performing an integer square root.

Any other ideas?

Fredrik

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to