1 / 17

Plan

Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui. Plan. Contexte – Etat de l’art Méthodologie Résultats Conclusion et perspectives. Contexte. Protéger les systèmes embarqués contre les soft errors :

Download Presentation

Plan

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Compilation optimisée pour la robustesse des systèmes embarquésAntoine WecxsteenEncadrants : Régis Leveugle & Salma Bergaoui

  2. Plan • Contexte – Etat de l’art • Méthodologie • Résultats • Conclusion et perspectives

  3. Contexte • Protéger les systèmes embarqués contre les soft errors : • Protection hardware déjà bien étudiée … • … mais beaucoup reste à faire au niveau logiciel. • On cible le banc de registres (mémoires protégées).

  4. Criticité • Analyse statique du code RTL. • 4 critères complémentaires : • Durée de vie • Importance dans les conditions de branchement • Nombre de descendants • Dépendances fonctionnelles

  5. Durée de vie • Critère qui sera développé ici.

  6. Criticité

  7. But du TER • Etudes déjà menées pour les macro-options de GCC • But de ce TER : affiner l’étude précédente option par option ou en combinant des options.

  8. Etat de l’art • Analyse statique validée. • Recherches similaires avec l’AVF (T. M. Jones, M.F. O’Boyle, O. Ergin, “Evaluating the Effects of Compiler Optimizations on AVF”, 2008.  Macro-options peu performantes.

  9. Méthodologie • Pour chaque programme de test, deux étapes : • On compile avec -O1et on évalue la criticité globale  on obtient une base B. • On recompile avec -O1 -option. On normalise la criticité obtenue par B. Le rapport obtenu représente l’augmentation ou la diminution de criticité en ajoutant l’option. • Pour chaque option, deux métriques : • Moyenne • Variance

  10. Résultats Pour O2 et O3 :

  11. Résultats Pour fshedule-insns, finline-functions, foptimize-sibling-calls :

  12. Résultats Criticité moyenne par option

  13. Combinaison d’options • Même méthodologie. • On combine : • les 5 meilleures 2 par 2. • les 5 pires 2 par 2. • fgcse et les options associées

  14. Résultats • Combiner cumule les effets en règle générale : • Exemple sur fexpensive-optimizations+ fschedule-insns2 finline-functions + fgcse fgcse + fgcse-las

  15. Conclusion et perspectives • Pas d’option « miracle » mais des options à éviter !  Le programmeur doit faire un compromis entre robustesse et les autres optimisations. • Il faudrait essayer de « classifier » les programmes pour réduire l’incertitude sur l’effet d’une option. • L’étude des combinaisons est à approfondir.

  16. Merci pour votre attention

  17. gcse ? • Global common sub-expression elimination a = b * c + g; d = b * c * d; tmp = b * c; a = tmp + g; d = tmp * d;

More Related