Hi all, I recently started fiddling with schoolbook division routines and came up with the implementation at:
https://github.com/wbhart/division Oddly enough, this beats what we have in MPIR by: * 20% for 6 x 3 division * 10% for 20 x 10 division * breaks even at 40 x 20 division * -1% for 60 x 30 division * -10% for 80 x 40 division I've no idea why it starts to fall behind after some time. However, the algorithm is so simple (see the function div_basecase in division.c) that it can surely be easily assembly optimised. I have not written out the proof in full that this implementation works, but I have convinced myself on paper that it is likely correct, and also written some very basic test code (included). If I can write out the full proof and write an assembly optimised version, I think we can use it in MPIR to speed up division substantially. There is a simpler version of this which also works (not included) and it is not much slower. So I can use that elsewhere. In that case the proof is trivial. Bill. -- 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.