| 1 | %============================================================================== |
|---|
| 2 | \section{Contexte et Sujet} |
|---|
| 3 | %============================================================================== |
|---|
| 4 | |
|---|
| 5 | \begin{frame} \FT{Contexte} |
|---|
| 6 | \BI |
|---|
| 7 | \o La simulation de processeurs a acquis une importance capitale pour le |
|---|
| 8 | développement de compilateurs et d'applications, pour bon nombre de raisons : |
|---|
| 9 | \BI |
|---|
| 10 | \o Il n'est pas nécessaire d'avoir à sa disposition le micro-processeur |
|---|
| 11 | \o Elle permet un diagnostic spécifique à un processeur des performances |
|---|
| 12 | d'un programme |
|---|
| 13 | \EI |
|---|
| 14 | \o Les simulateurs les plus répandus prennent en considération des détails |
|---|
| 15 | très nombreux des processeurs, il en découle des simulations très lentes, |
|---|
| 16 | voire inutilisables pour simuler des architectures multicoeur. |
|---|
| 17 | \EI |
|---|
| 18 | \end{frame} %------------------------------------------------------------------- |
|---|
| 19 | \begin{frame} \FT{Description détaillée} |
|---|
| 20 | \BI |
|---|
| 21 | \o On cherche à simuler le comportement d'un programme en se focalisant sur |
|---|
| 22 | l'aspect mémoire : |
|---|
| 23 | \BI |
|---|
| 24 | \o La hierarchie de cache |
|---|
| 25 | \o La communication entre les cache |
|---|
| 26 | \o La simulation des délais de traitement |
|---|
| 27 | \EI |
|---|
| 28 | \o L'objectif est donc d'obtenir des estimations suivantes : |
|---|
| 29 | \BI |
|---|
| 30 | \o le nombre de hit/miss |
|---|
| 31 | \o comptabiliser ces hit/miss en tant que principaux délais induits |
|---|
| 32 | dans la simulation |
|---|
| 33 | \EI |
|---|
| 34 | \EI |
|---|
| 35 | \end{frame} |
|---|
| 36 | |
|---|
| 37 | \begin{frame} \FT{État de l'art} |
|---|
| 38 | \BI |
|---|
| 39 | \o Il existe quelques simulateurs, qui sont, pour la plupart orientés vers |
|---|
| 40 | une simulation complète et précise, il en résulte qu'ils sont toujours |
|---|
| 41 | relativement lents : |
|---|
| 42 | \BI |
|---|
| 43 | \o SimpleScalar, qui est inutilisable (sans extension), pour simuler |
|---|
| 44 | des systèmes multi-processeurs ou multicoeurs. |
|---|
| 45 | \o Unisim, qui est beaucoup plus modulaire, mais qui procure un |
|---|
| 46 | framework assez important, dont il aurait fallu extraire la |
|---|
| 47 | simple modélisation de cache. |
|---|
| 48 | \o Simics, semble offrir des avantages considérables sur les autres, |
|---|
| 49 | notemment quant à sa vitesse d'exécution, mais c'est un logiciel |
|---|
| 50 | propriétaire |
|---|
| 51 | \EI |
|---|
| 52 | \EI |
|---|
| 53 | |
|---|
| 54 | \end{frame} %------------------------------------------------------------------- |
|---|