roots
Jason Moxham
J.L.Moxham@maths.soton.ac.uk
Sat, 30 Nov 2002 23:10:16 +0000
--------------Boundary-00=_4DWEBXFVVHVPRLB9QZ03
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Preliminary replacements (attached) for=20
mpz_root
"mpn_rootrem"
All the basic fns are there now , it just needs tuneing and threshold twe=
eking=20
, and cleaning up (if gmp wants it?)
There is no direct replacement for mpn_rootrem , so I have replaced mpz_r=
oot=20
which is the only function that uses it.
So the only functions that have changed are the undocumented ones.
A mpn_rootrem could be writen if a use for it is found/wanted ,=20
and I do use the existing mpn_rootrem for very small n=20
=20
There is quite a bit of code , but some of it could be used elsewhere eg=20
perfect_power_testing (definitely) and newton inversion(if its fast)
jason
--------------Boundary-00=_4DWEBXFVVHVPRLB9QZ03
Content-Type: application/x-tbz;
name="root.tar.bz2"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="root.tar.bz2"
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
YoRYoWSYZ3c7DqEJ/+LuSKcKEgkdyhOA
--------------Boundary-00=_4DWEBXFVVHVPRLB9QZ03
Content-Type: text/plain;
charset="us-ascii";
name="timings"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="timings"
compairing gmp-4.1 int mpz_root(r,n,k) against new code
where n has number of bits below
speedups on athlon linux
bits/k 2 3 4 5 6 7 8 23 54 321
10 0.78791 0.72039 0.67372 0.63075 0.65773 0.7044 0.73222 2.4176 2.4383 2.3734
13 0.781 0.78725 0.69317 0.70367 0.67824 0.64255 0.65897 2.4357 2.4282 2.3845
16 0.77904 0.81416 0.70829 0.71517 0.70632 0.71668 0.62616 2.3974 2.409 2.387
20 0.81061 0.79815 0.7929 0.72513 0.72405 0.72406 0.70948 2.4796 2.4449 2.3893
26 0.8108 0.82155 0.82508 0.82074 0.79984 0.76148 0.73999 0.76029 2.4662 2.3974
33 0.82289 0.8379 0.83065 0.84633 0.84612 0.81926 0.78646 0.73017 2.5057 2.488
42 0.83351 0.82824 0.86488 0.86234 0.86489 0.86577 0.84609 0.69798 2.5218 2.5812
54 0.84198 0.8685 0.87724 0.88454 0.86979 0.87932 0.87984 0.79502 2.5533 2.5795
70 0.90903 0.91326 0.89966 0.89506 0.89724 0.90333 0.89192 0.80984 0.77089 2.6457
91 0.91458 0.89776 0.91356 0.9186 0.91005 0.90595 0.90754 0.81793 0.7086 3.2174
118 0.91142 0.91914 0.9106 0.91561 0.91208 0.90842 0.91021 0.8731 0.82154 2.7835
153 0.9435 0.92918 0.93282 0.9183 0.91513 0.94356 0.94605 0.91622 0.80855 3.6201
198 1.1663 1.2239 1.0272 0.97677 0.89822 0.69654 0.84449 0.7765 0.35173 3.7111
257 1.1984 1.1949 1.0849 1.0296 1.0593 1.2633 0.93829 0.9809 0.43854 3.8521
334 1.472 1.4101 1.3907 1.4462 1.1217 1.3331 1.4096 0.99344 0.59881 0.44774
434 1.6107 1.7144 1.7706 1.5073 1.6082 1.2898 1.5221 1.1518 1.064 0.44464
564 1.998 1.9118 2.1227 1.8479 1.6957 2.029 2.1656 1.5738 1.3081 0.33169
733 2.3184 2.3219 2.4426 2.4438 2.0477 2.5635 2.4188 1.738 1.7945 0.79777
952 2.4591 2.9346 3.0528 2.8377 2.7676 3.3658 3.1479 3.3411 2.2821 0.70681
1237 3.1208 3.4446 3.8411 3.5591 3.7044 4.0029 4.1929 4.0361 3.4013 1.8676
1608 3.4562 4.234 4.8282 5.1119 5.0087 5.4705 5.8508 5.9274 4.0698 3.0924
2090 3.8351 4.9559 6.3123 6.2434 6.0428 7.1503 7.7967 7.6092 6.9769 5.0225
2717 4.3653 6.0374 7.8948 7.6454 8.1596 9.3108 9.6656 10.587 9.6524 7.9372
3532 4.6533 7.0174 9.1511 9.6503 10.831 11.41 12.554 14.956 13.173 14.968
4591 5.2267 7.4988 10.886 11.792 12.74 15.769 17.009 21.807 19.085 22.772
5968 5.5672 8.4886 11.936 14.35 16.453 19.783 20.897 30.578 27.785 32.877
7758 5.7382 9.3798 12.763 15.768 19.656 24.214 27.131 38.122 39.875 52.393
10085 6.4197 9.9171 14.273 16.499 20.83 26.797 31.863 53.593 55.634 79.284
13110 6.6278 10.793 14.917 18.033 23.669 29.125 34.428 67.655 70.98 106.75
17043 7.3037 11.155 16.204 19.529 24.293 31.76 38.73 88.941 105.71 139.43
22155 7.5009 11.416 16.416 20.879 24.261 33.632 40.113 113.87 138.05 217.48
28801 7.5818 12.207 16.091 20.153 26.8 34.401 40.715 105.81 180.63 208.23
37441 8.1752 12.178 17.37 19.958 27.4 37.159 44.243 140.81 220.77 480.1
48673 8.4129 12.23 17.437 22.622 27.292 36.843 44.302 157.11 274.52 642.42
63274 8.4544 13.71 17.626 22.33 28.796 39.041 43.975 158.55 312.83 863.39
82256 9.1615 13.804 17.969 23.76 28.561 39.272 46.783 160.86 327.81 1099.2
106932 9.2837 14.655 18.769 23.839 30.736 39.407 45.953 174.32 341.99 1537
139011 10 14.758 19.904 23.94 30.354 41.4 49.527 171.98 370.79 1849.2
180714 9.7685 14.896 18.304 25.024 30.879 41.091 48.729 171.09 367.59 2292.4
234928 10.111 15.599 19.588 24.991 31.153 42.488 47.698 172.12 359.83 1614.3
305406 10.665 15.885 21.023 24.79 31.953 43.046 50.53 171.76 363.62 1968.3
397027 10.912 16.657 21.162 26.482 33.45 43.324 51.195 182.55 360.86 2260.7
516135 10.956 16.789 21.142 26.406 34.011 45.686 50.7 180.05 383.58 2296
670975 11.737 17.138 22.745 28.192 34.019 45.39 54.412 185.54 391.05 3079.8
872267 12.251 18.29 22.467 27.753 35.675 44.309 53.911 184.69 367.71 3017.4
1133947 13.304 18.555 23.508 27.969 34.803 47.051 55.832 184.03 376.62 3073
1474131 13.51 18.681 23.241 28.55 34.818 45.743 54.416 179.25 366.17 3261.3
1916370 14.079 20.446 23.161 27.101 36.027 49.269 53.922 180.73 379.6 3237.1
2491281 14.912 20.262 23.983 26.765 36.496 48.135 57.232 175.56 362.71 3050.6
3238665 15.536 21.576 23.863 28.462 36.777 46.92 56.84 175.82 367.59 3359.4
4210264 16.885 22.151 25.139 27.943 35.258 47.293 57.894 172.5 353.95 3152.7
5473343 17.857 22.448 25.493 29.197 35.226 46.02 54.193 171.32 350.49 2954.1
--------------Boundary-00=_4DWEBXFVVHVPRLB9QZ03--