Skip to Main content Skip to Navigation
Journal articles

Numerical program optimisation by automatic improvement of the accuracy of computations

Abstract : Over the last decade, guaranteeing the accuracy of computations relying on the IEEE754 floating-point arithmetic has become increasingly complex. Failures, caused by small or large perturbations due to round-off errors, have been registered. To cope with this issue, we have developed a tool which corrects these errors by automatically transforming programs in a source to source manner. Our transformation, relying on static analysis by abstract abstraction, operates on pieces of code with assignments, conditionals and loops. By transforming programs, we can significantly optimise the numerical accuracy of computations by minimising the error relatively to the exact result. In this article, we present two important desirable side-effects of our transformation. Firstly, we show that our transformed programs, executed in single precision, may compete with not transformed codes executed in double precision. Secondly, we show that optimising the numerical accuracy of programs accelerates the convergence of numerical iterative methods. Both of these properties of our transformation are of great interest for numerical software.
Complete list of metadata
Contributor : Alexandre Chapoutot <>
Submitted on : Tuesday, March 27, 2018 - 4:46:46 PM
Last modification on : Wednesday, July 3, 2019 - 10:48:05 AM




Nasrine Damouche, Matthieu Martel, Alexandre Chapoutot. Numerical program optimisation by automatic improvement of the accuracy of computations. International Journal of Intelligent Engineering Informatics, 2018, 6 (1/2), pp.115-145. ⟨10.1504/IJIEI.2018.091016⟩. ⟨hal-01744855⟩



Record views