13.08.2012 Views

Fonctionnement d'un ordinateur depuis zéro

Fonctionnement d'un ordinateur depuis zéro

Fonctionnement d'un ordinateur depuis zéro

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Sommaire 6/343<br />

Prefetching .............................................................................................................................................................................................................. 267<br />

Prefetchers séquentiels ........................................................................................................................................................................................... 267<br />

History based prefecther ......................................................................................................................................................................................... 268<br />

Prefetching des instructions .................................................................................................................................................................................... 269<br />

Runahead ................................................................................................................................................................................................................ 271<br />

Suppression des lignes de cache ........................................................................................................................................................................... 271<br />

Algorithmes de suppression des lignes de cache ................................................................................................................................................... 272<br />

Dans la réalité ......................................................................................................................................................................................................... 272<br />

Correspondance Index - Adresse ............................................................................................................................................................................ 273<br />

Tag <strong>d'un</strong>e ligne de cache ......................................................................................................................................................................................... 273<br />

Les caches direct mapped ...................................................................................................................................................................................... 274<br />

Les caches Fully associative ................................................................................................................................................................................... 276<br />

Les caches N-way associative ................................................................................................................................................................................ 277<br />

On n'a pas qu'un seul cache ! ................................................................................................................................................................................. 277<br />

Caches L1, L2 et L3 ................................................................................................................................................................................................ 278<br />

Caches unifiés et caches séparés .......................................................................................................................................................................... 280<br />

Caches spécialisés ................................................................................................................................................................................................. 280<br />

Autres optimisations de la hiérarchie mémoire ............................................................................................................. 282<br />

Local Stores ............................................................................................................................................................................................................ 282<br />

Rappels sur les caches ........................................................................................................................................................................................... 282<br />

Local Store .............................................................................................................................................................................................................. 282<br />

Avantages/inconvénients ........................................................................................................................................................................................ 283<br />

Prefetch Input Queue .............................................................................................................................................................................................. 283<br />

Implémentation ........................................................................................................................................................................................................ 284<br />

Paye tes branchements ! ......................................................................................................................................................................................... 284<br />

Partie 7 : Le parallélisme d'instruction et les processeurs modernes .............................................. 285<br />

Le pipeline : qu'est-ce que c'est ? ................................................................................................................................. 285<br />

Un besoin : le parallèlisme d'instruction .................................................................................................................................................................. 285<br />

Le pipeline : rien à voir avec un quelconque tuyau à pétrole ! ................................................................................................................................ 286<br />

Sans pipeline ........................................................................................................................................................................................................... 287<br />

Et dieu inventa le pipeline ....................................................................................................................................................................................... 287<br />

Implémentation hardware ........................................................................................................................................................................................ 288<br />

Un besoin : isoler les étages du pipeline ................................................................................................................................................................. 288<br />

Comment on fait ? ................................................................................................................................................................................................... 290<br />

Une histoire de fréquence... .................................................................................................................................................................................... 291<br />

Un pipeline pas parfait ............................................................................................................................................................................................ 293<br />

Les dépendances d'instructions .............................................................................................................................................................................. 293<br />

Les accès mémoires ............................................................................................................................................................................................... 294<br />

L'aléa structurel ....................................................................................................................................................................................................... 294<br />

Les branchements ................................................................................................................................................................................................... 295<br />

Conclusion .............................................................................................................................................................................................................. 295<br />

Les branchements viennent mettre un peu d'ambiance ! ............................................................................................. 295<br />

Effet des branchements sur le pipeline ................................................................................................................................................................... 296<br />

Les solutions de base ............................................................................................................................................................................................. 297<br />

Délai de branchements ........................................................................................................................................................................................... 297<br />

Les processeurs malins .......................................................................................................................................................................................... 297<br />

Branch Free Code ................................................................................................................................................................................................... 297<br />

Prédiction de branchement ..................................................................................................................................................................................... 298<br />

Erreurs de prédiction ............................................................................................................................................................................................... 299<br />

Prédiction de direction de branchement .................................................................................................................................................................. 300<br />

Prédiction de branchement ..................................................................................................................................................................................... 302<br />

Eager execution ...................................................................................................................................................................................................... 308<br />

Quelques limites pratiques ...................................................................................................................................................................................... 309<br />

Disjoint Eager Execution ......................................................................................................................................................................................... 311<br />

Execution Out Of Order et Forwarding .......................................................................................................................... 313<br />

Dépendances d'instructions .................................................................................................................................................................................... 313<br />

Dépendances d'instructions .................................................................................................................................................................................... 313<br />

Bypass et Forwarding .............................................................................................................................................................................................. 314<br />

Effet des dépendances RAW .................................................................................................................................................................................. 314<br />

Bypass ..................................................................................................................................................................................................................... 315<br />

Clusters ................................................................................................................................................................................................................... 317<br />

Execution Out Of Order ........................................................................................................................................................................................... 317<br />

Une idée géniale ..................................................................................................................................................................................................... 318<br />

OOO ........................................................................................................................................................................................................................ 318<br />

Scoreboarding ......................................................................................................................................................................................................... 319<br />

Étape d'issue ........................................................................................................................................................................................................... 320<br />

L'étape Read Operand ............................................................................................................................................................................................ 320<br />

Exécution ................................................................................................................................................................................................................. 321<br />

Writeback ................................................................................................................................................................................................................ 321<br />

scoreboard .............................................................................................................................................................................................................. 321<br />

Final ......................................................................................................................................................................................................................... 322<br />

Le renommage de registres ..........................................................................................................................................<br />

Le renommage de registres .................................................................................................................................................................................... 323<br />

Des dépendances fictives ....................................................................................................................................................................................... 323<br />

Des registres en double ! ........................................................................................................................................................................................ 324<br />

Le renommage, ça se fait avec quoi ? .................................................................................................................................................................... 324<br />

Autre optimisations .................................................................................................................................................................................................. 325<br />

Algorithme de Tomasulo .......................................................................................................................................................................................... 325<br />

L'étape d'Issue ........................................................................................................................................................................................................ 326<br />

Reservation Stations ............................................................................................................................................................................................... 326<br />

Étape d’exécution .................................................................................................................................................................................................... 327<br />

Le Common Memory Bus ........................................................................................................................................................................................ 327<br />

www.siteduzero.com<br />

322

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!