Top Banner
Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui
17

Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Apr 03, 2015

Download

Documents

Méraud Bardet
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Compilation optimisée pour la robustesse des systèmes embarqués

Antoine Wecxsteen

Encadrants : Régis Leveugle & Salma Bergaoui

Page 2: 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

2

Page 3: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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).

Page 4: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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

Page 5: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Durée de vie

• Critère qui sera développé ici.

Page 6: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Criticité

Page 7: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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.

7

Page 8: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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.

Page 9: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Méthodologie

• Pour chaque programme de test, deux étapes :

1. On compile avec -O1 et on évalue la criticité globale on obtient une base B.

2. 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

Page 10: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Résultats

adpcm FFT gsm jpeg patricia qsort AES Mean Var

O2 108,7 101,35 113,91 100,54 108,06 111,45 153,39 120,48 1050,8

O3 108,7 103,27 276,61 138,1 180,11 111,45 216,48 154,13 3391,3

Pour O2 et O3 :

Page 11: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Résultats

adpcm FFT gsm jpeg patricia qsort AES Mean Var

fshedule-insns 99,03 99,64 104,81 99,79 98,95 101,18 129,96 103,16 84,57

finline-functions 100 99,15 138,69 127,04 177,53 100 105,91 115,69 613,85foptimize-sibling-

calls 100 100 99,59 99,32 100 100 100 99,89 0,05

Pour fshedule-insns, finline-functions, foptimize-sibling-calls :

Page 12: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Résultats

Criticité moyenne par option

Page 13: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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

Page 14: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Résultats

• Combiner cumule les effets en règle générale :• Exemple sur fexpensive-optimizations + fschedule-insns2

finline-functions + fgcse

fgcse + fgcse-las

adpcm FFT gsm jpeg patricia qsort AES Mean Var

meilleures 100 100 99,73 99,91 100 100 100 99,96 0,006

pires 104,73 102,9 144,16 127,91 176,69 113,8 144,69 131,87 978,46

fgcse 104,73 103,74 108,02 101,07 102,68 113,81 136,13 116,13 808,88

Page 15: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

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.

Page 16: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

Merci pour votre attention

16

Page 17: Compilation optimisée pour la robustesse des systèmes embarqués Antoine Wecxsteen Encadrants : Régis Leveugle & Salma Bergaoui.

gcse ?

• Global common sub-expression elimination

a = b * c + g;

d = b * c * d;

tmp = b * c;

a = tmp + g;

d = tmp * d;