Evaluating Straight-Line Programs over Balls
Palestrante(s) : Grégoire Lecerf (CNRS, LIX, École polytechnique)Evaluating Straight-Line Programs over Balls
Joint work with Joris van der Hoeven
Interval arithmetic achieves numerical reliability for a wide range of applications, at the price of a performance penalty. For applications to homotopy continuation, one key ingredient is the efficient and reliable evaluation of complex polynomials represented by straight-line programs. This is best achieved using ball arithmetic, a variant of interval arithmetic.
In this talk, we describe strategies for reducing the performance penalty of basic operations on balls. We also show how to bound the effect of rounding errors at the global level of evaluating a straight-line program. This allows us to introduce a new and faster "transient" variant of ball arithmetic.
Most of our strategies have been implemented inside the Multimix and Justinline libraries of Mathemagix, in C++ and in the Mathemagix language. We have also implemented a dedicated "just in time" compiler for straight-line programs from scratch, supporting SSE and AVX technologies. Overall, we managed to reduce the overhead of ball arithmetic to a small factor between two and four.
marc (at) nullmezzarobba.net