As suspected, memset adds quite some moverhead. So much that I'd say it was poorly written (this is freebsd 9):
MPN_ZERO mpn_zero memset 1 #2.9182 7.7789 30.1435 2 #1.9448 4.8618 15.0717 3 #1.6206 3.8895 10.0605 4 #1.4586 3.4043 7.5431 5 #1.3626 3.1160 6.0306 7 #1.2519 2.7796 4.3062 9 #1.1885 2.5930 3.3531 12 #2.0273 2.4317 2.5155 16 #2.0055 2.3101 2.3701 22 1.9905 2.2106 #1.9889 31 1.9761 2.1335 #1.6938 43 1.9680 2.4401 #1.4940 60 1.9633 2.0787 #1.3451 84 1.6791 1.8050 #0.9857 118 1.4755 1.5990 #0.9080 166 1.3313 1.4825 #0.7878 234 1.2258 1.3859 #0.7102 330 1.1525 1.3535 #0.6438 466 1.1002 1.2659 #0.5957 658 1.0625 1.2222 #0.5650 930 1.0367 1.2231 #0.5411 GNU's better: MPN_ZERO mpn_zero memset 1 #2.9262 6.8264 13.6536 2 #1.9513 4.3888 6.8267 3 #1.6256 3.5758 2.9263 4 #1.4630 3.1695 2.1946 5 #1.3654 2.9255 2.1456 7 2.9264 2.6471 #1.5326 9 2.9257 2.4925 #1.5170 12 2.9257 2.3570 #1.1378 16 2.9260 2.2552 #0.7924 22 2.9255 2.1720 #0.5763 31 2.9256 2.1079 #0.5978 43 2.6988 2.4042 #0.6124 60 2.2104 1.9992 #0.5364 84 1.8577 1.7074 #0.5225 118 1.6034 1.4960 #0.5043 166 1.4218 1.3454 #0.4994 234 1.2920 1.2381 #0.5043 330 1.1998 1.1615 #0.5379 466 1.1348 1.1070 #0.5232 658 1.0880 1.0687 #0.5130 930 1.0550 1.0413 #0.5056 1315 1.0317 1.0228 #0.5044 1859 1.0153 1.0084 #0.4997 2628 1.0037 0.9993 #0.4940 3715 0.9956 0.9923 #0.4933 -- Torbjörn Please encrypt, key id 0xC8601622 _______________________________________________ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel