Faster Arbitrary-Precision Dot Product and Matrix Multiplication

We present algorithms for real and complex dot product and matrix multiplication in arbitrary-precision floating-point and ball arithmetic. A low-overhead dot product is implemented on the level of GMP limb arrays; it is about twice as fast as previous code in MPFR and Arb at precision up to several hundred bits. Up to 128 bits, it is 3-4 times as fast, costing 20-30 cycles per term for floating-point evaluation and 40-50 cycles per term for balls. We handle large matrix multiplications even more efficiently via blocks of scaled integer matrices. The new methods are implemented in Arb and significantly speed up polynomial operations and linear algebra.

[1]  Daniel Kressner,et al.  Numerical Methods for General and Structured Eigenvalue Problems , 2005, Lecture Notes in Computational Science and Engineering.

[2]  Jean-Michel Muller,et al.  Arithmetic Algorithms for Extended Precision Using Floating-Point Expansions , 2016, IEEE Transactions on Computers.

[3]  Joris van der Hoeven,et al.  Evaluating Straight-Line Programs over Balls , 2016, 2016 IEEE 23nd Symposium on Computer Arithmetic (ARITH).

[4]  Fredrik Johansson,et al.  Arb: a C library for ball arithmetic , 2014, ACCA.

[5]  Vincent Lefèvre,et al.  Optimized Binary64 and Binary128 Arithmetic with GNU MPFR , 2017, 2017 IEEE 24th Symposium on Computer Arithmetic (ARITH).

[6]  Vincent Lefèvre Correctly Rounded Arbitrary-Precision Floating-Point Summation , 2017, IEEE Transactions on Computers.

[7]  H. T. Kung,et al.  Fast Algorithms for Manipulating Formal Power Series , 1978, JACM.

[8]  E. Hansen,et al.  Interval Arithmetic in Matrix Computations, Part II , 1965 .

[9]  Vincent Lefèvre,et al.  MPFR: A multiple-precision binary floating-point library with correct rounding , 2007, TOMS.

[10]  Joris van der Hoeven,et al.  Efficient Certification of Numeric Solutions to Eigenproblems , 2017, MACIS.

[11]  Siegfried M. Rump,et al.  Verification methods: rigorous results using floating-point arithmetic , 2010, Acta Numerica.

[12]  Joris van der Hoeven,et al.  Faster FFTs in Medium Precision , 2015, 2015 IEEE 22nd Symposium on Computer Arithmetic.

[13]  Fredrik Johansson,et al.  Arb: Efficient Arbitrary-Precision Midpoint-Radius Interval Arithmetic , 2016, IEEE Transactions on Computers.

[14]  Fredrik Johansson,et al.  A fast algorithm for reversion of power series , 2011, Math. Comput..

[15]  Éric Schost,et al.  Simultaneous Conversions with the Residue Number System Using Linear Algebra , 2018, ACM Trans. Math. Softw..

[16]  Alan Edelman,et al.  Julia: A Fresh Approach to Numerical Computing , 2014, SIAM Rev..

[17]  William B. Hart,et al.  Fast Library for Number Theory: An Introduction , 2010, ICMS.