Code Synthesis to Optimize Accuracy and Speed in Floating-Point Arithmetic - Archive ouverte HAL Access content directly
Theses Year : 2014

Code Synthesis to Optimize Accuracy and Speed in Floating-Point Arithmetic

Synthèse de code avec compromis entre performance et précision en arithmétique flottante IEEE 754

(1)
1

Abstract

Numerical accuracy and execution time of programs using the floating-point arithmetic are major challenges in many computer science applications. The improvement of these criteria is the subject of many research works. However we notice that the accuracy improvement decrease the performances and conversely. Indeed, improvement techniques of numerical accuracy, such as expansions or compensations, increase the number of computations that a program will have to execute. The more the number of computations added is, the more the performances decrease. This thesis work presents a method of accuracy improvement which take into account the negative effect on the performances. So we automatize the error-free transformations of elementary floating-point operations because they present a high potential of parallelism. Moreover we propose some transformation strategies allowing partial improvement of programs to control more precisely the impact on execution time. Then, tradeoffs between accuracy and performances are assured by code synthesis. We present also several experimental results with the help of tools implementing all the contributions of our works.
La précision numérique et le temps d’exécution des programmes utilisant l’arithmétique flottante sont des enjeux majeurs dans de nombreuses applications de l’informatique. L’amélioration de ces critères fait l’objet de nombreux travaux de recherche. Cependant, nous constatons que l’amélioration de la précision diminue les performances et inversement. En effet, les techniques d’amélioration de la précision, telles que les expansions ou les compensations, augmentent le nombre de calculs que devra exécuter un programme. Plus ce coût est élevé, plus les performances sont diminuées. Ce travail de thèse présente une méthode d’amélioration automatique de la précision prenant en compte l’effet négatif sur les performances. Pour cela nous automatisons les transformations sans erreur des opérations élémentaires car cette technique présente un fort potentiel de parallélisme. Nous proposons de plus des stratégies d’optimisation permettant une amélioration partielle des programmes afin de contrôler plus finement son impact sur les performances. Des compromis entre performances et précision sont alors assurés par la synthèse de code. Nous présentons de plus, à l’aide d’outils implantant toutes les contributions de ce travail, de nombreux résultats expérimentaux.
Fichier principal
Vignette du fichier
these_thevenoux.pdf (1.06 Mo) Télécharger le fichier
Vignette du fichier
annexe-slides.pdf (2.53 Mo) Télécharger le fichier
Loading...

Dates and versions

tel-01143824 , version 1 (04-11-2016)

Identifiers

  • HAL Id : tel-01143824 , version 1

Cite

Laurent Thévenoux. Synthèse de code avec compromis entre performance et précision en arithmétique flottante IEEE 754. Arithmétique des ordinateurs. Université de Perpignan Via Domitia, 2014. Français. ⟨NNT : ⟩. ⟨tel-01143824⟩
405 View
816 Download

Share

Gmail Facebook Twitter LinkedIn More