Comparison of MPFR with Other Software

Updated for MPFR 2001 with GMP 3.1.1.

32-bit machine

The following tables give the cpu time in milliseconds spent by several systems or libraries for different operations, at different precisions. These timings were obtained on a 400Mhz Xeon (alexandre.medicis.polytechnique.fr) running Linux (libraries were compiled with gcc 2.95.2 with option -O2). Thanks to the Médicis center for providing a machine with all those systems installed on it.

MapleMuPADGMP MPFMPFRMathematicaPariMagmaArithmetic Explorer iRRAM
commercialcommercial/freefreefreecommercialfreecommercialfreefree
interactiveinteractivelibrarylibraryinteractivelibraryinteractiveinteractive library
directed roundingnononoyesnononoyesno
100 digits Maple V.5.1 MuPAD 1.4.2 MPF 3.1 MPFR 2001 Mathematica 4.0.1 Pari 2.0.14 alpha Magma V2.7-2 Ar. Explorer 1.00 iRRAM 2000-08-22
multiplication 0.04 0.024 0.0037 0.0038 0.020 0.003 0.021 0.017 0.006
division 0.15 0.027 0.007 0.0080 0.143 0.007 0.0351 0.018 0.010
square root 0.29 0.072 0.0173 0.0115 0.18 0.032 0.1419 0.10 0.078
exponential 1.4 0.47 n/a 0.149 0.94 0.16 1.1191 n/a 0.522
logarithm 2.3 0.82 n/a 0.344 1.24 0.35 2.0211 n/a 1.45
sin and cos n/a 1.35 n/a
1000 digits Maple V.5.1 MuPAD 1.4.2 MPF 3.1 MPFR 2001 Mathematica 4.0.1 Pari 2.0.14 alpha Magma V2.7-2 Ar. Explorer 1.00 iRRAM 2000-08-22
multiplication 1.1 0.48 0.142 0.145 0.37 0.18 1.089 0.51 0.17
division 11.3 0.56 0.229 0.228 1.12 0.25 1.301 0.40 0.287
square root 15.0 1.5 0.355 0.177 1.6 0.70 3.41 1.3 0.364
exponential 53 35 n/a 6.24 35 14 78.51 n/a 21.1
logarithm 69 52 n/a 7.76 31 23 118.9 n/a 18.8
sin and cos n/a 36.8 n/a
10000 digits Maple V.5.1 MuPAD 1.4.2 MPF 3.1 MPFR 2001 Mathematica 4.0.1 Pari 2.0.14 alpha Magma V2.7-2 Ar. Explorer 1.00 iRRAM 2000-08-22
multiplication 39 45 4.7 4.8 15 17 104.5 50 4.88
division 1130 49 10.1 10.1 43 22 116 37 10.5
square root 1390 160 15.7 7.5 55 72 363 88 15.1
exponential 5330 9690 n/a 620 930 3680 22360 n/a 3740
logarithm 5660 15720 n/a 343 1240 6750 35419 n/a 1070
sin and cos n/a 3280 n/a

The source file of these tests is available for Maple, MuPAD, MPF from GMP, MPFR, Mathematica, Pari, and Magma.

64-bit machine

The following timings were obtained, with the stimulation and help of Bruno Salvy, on a 500Mhz Compaq XP/1000 (aka Alpha EV6) with gcc 2.95.2 under OSF/1 4.0 with 640MB of main memory (leon1.medicis.polytechnique.fr).

100 digits Maple V.5.1 MPF 3.1 MPFR 2001 Mathematica 3.0 Pari 2.0.14 alpha Magma V2.7-2
multiplication .0125 0.000970 0.000965 0.0114995 0.0012 0.0033
division .0278 0.00212 0.0025 0.108996 0.0065 0.0134
square root .0847 0.00505 0.0043 0.287655 0.028 0.0483
exponential .583 n/a 0.058 0.871632 0.17 0.4516
logarithm 1.08 n/a 0.119 0.836633 0.38 0.8133
sin and cos n/a 0.37
1000 digits Maple V.5.1 MPF 3.1 MPFR 2001 Mathematica 3.0 Pari 2.0.14 alpha Magma V2.7-2
multiplication .185 0.0232 0.0228 0.101663 0.067 0.067
division .721 0.0472 0.0460 0.461648 0.116 0.116
square root 1.28 0.0709 0.0387 0.988294 0.37 0.5
exponential 14.2 n/a 1.27 9.86627 7.44 7.33
logarithm 15.8 n/a 1.60 19.3326 12.9 14.01
sin and cos n/a 6.13
10000 digits Maple V.5.1 MPF 3.1 MPFR 2001 Mathematica 3.0 Pari 2.0.14 alpha Magma V2.7-2
multiplication 7.20 0.859 0.86 7.5997 6.7 6.17
division 57.0 1.85 1.83 22.9991 7.6 6.7
square root 73.9 2.74 1.36 34.7653 26.0 21.7
exponential 1590. n/a 110 1615.94 1600 1366
logarithm 1410. n/a 63.6 7418.54 2550 2150
sin and cos n/a 500.

Back to the MPFR page.