Contributions to computer arithmetic and applications to embedded systems

Nicolas Brunie 1, 2
2 ARIC - Arithmetic and Computing
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
Résumé : Au cours des dernières décennies les systèmes embarqués ont dû faire face à des demandes applicatives de plus en plus variées et de plus en plus contraintes. Ce constat s'est traduit pour l’arithmétique par le besoin de toujours plus de performances et d'efficacité énergétique. Ce travail se propose d'étudier des solutions allant du matériel au logiciel, ainsi que les diverses interactions qui existent entre ces domaines, pour améliorer le support arithmétique dans les systèmes embarqués. Certains résultats ont été intégrés au processeur MPPA développé par Kalray.La première partie est consacrée au support de l'arithmétique virgule flottante dans le MPPA. Elle commence par la mise au point d'une unité flottante matérielle basée sur l'opérateur classique FMA (fused multiply-Add). Les améliorations proposées, implémentées et évaluées incluent un FMA à précision mixte, l'addition à 3 opérandes et le produit scalaire 2D, à chaque fois avec un seul arrondi et le support des sous-Normaux. Cette partie se poursuit par l'étude de l'implémentation des autres primitives flottantes normalisées : division et racine carrée. L'unité flottante matérielle précédente est réutilisée et modifiée pour optimiser ces primitives à moindre coût. Cette première partie s’ouvre sur le développement d'un générateur de code destiné à l'implémentation de bibliothèques mathématiques optimisées pour différents contextes (architecture, précision, latence, débit).La seconde partie consiste en la présentation d'une nouvelle architecture de coprocesseur reconfigurable. Cet opérateur matériel peut être dynamiquement modifié pour s'adapter à la volée à des besoins applicatifs variés. Il vise à fournir des performances se rapprochant d'une implémentation matérielle dédiée sans renier la flexibilité inhérente au logiciel. Il a été spécifiquement pensé pour être intégré avec un cœur embarqué faible consommation du MPPA. Cette partie s'attache aussi à décrire le développement d'un environnement logiciel pour cibler ce coprocesseur ainsi qu'explorer divers choix architecturaux envisagés.La dernière partie étudie un problème plus large : l'utilisation efficace de ressources arithmétiques parallèles. Elle présente une amélioration des architectures régulières Single Instruction Multiple Data tels qu’on les trouve dans les accélérateurs graphiques (GPU) pour l'exécution de graphes de flot de contrôle divergents.
Type de document :
Thèse
Other [cs.OH]. Ecole normale supérieure de lyon - ENS LYON, 2014. English. 〈NNT : 2014ENSL0894〉
Liste complète des métadonnées

Littérature citée [133 références]  Voir  Masquer  Télécharger

https://tel.archives-ouvertes.fr/tel-01078204
Contributeur : Abes Star <>
Soumis le : mardi 28 octobre 2014 - 11:52:34
Dernière modification le : jeudi 29 juin 2017 - 10:01:30
Document(s) archivé(s) le : jeudi 29 janvier 2015 - 10:36:27

Fichier

BRUNIE_Nicolas_2014_These.pdf
Version validée par le jury (STAR)

Identifiants

  • HAL Id : tel-01078204, version 1

Collections

Citation

Nicolas Brunie. Contributions to computer arithmetic and applications to embedded systems. Other [cs.OH]. Ecole normale supérieure de lyon - ENS LYON, 2014. English. 〈NNT : 2014ENSL0894〉. 〈tel-01078204〉

Partager

Métriques

Consultations de la notice

482

Téléchargements de fichiers

748