InfoS8AC - Computer Architecture
Computer Architecture
Responsable : Xavier GOAOC, Professeur
xavier.goaoc@univ-lorraine.fr
Durée du module : 21 heures
Crédits ECTS : 2
Objectif général :
introduire à l'architecture moderne des ordinateurs et permettre d'appréhender les évolutions futures
Programme et Contenu :
La capacité de calcul des processeurs a progressé de manière impressionnante au cours des dernière décennies. Cette évolution repose en partie sur des progrès physiques comme l'augmentation de la densité de transistors ou de la fréquence d'horloge. Elle repose aussi en partie sur une sophistication croissante de la manière dont un processeur organise le traitement des données. Comprendre cette sophistication permet de mieux appréhender des problématiques actuelles comme le développement du calcul sur GPU et TPU ou les failles de sécurité SPECTRE et MELTDOWN.
Ce cours introduit à l'architecture des ordinateurs, plus spécifiquement des processeurs Intel, au travers de trois développements techniques importants : les hiérarchies mémoire, les prédicteurs de branchement et le parallélisme vectoriel. Ce cours fait la part belle à l'expérimentation en TP, avec par exemple de la mesure de performance de programmes élémentaires (en C) et de l'analyse de codes assembleur produits par un compilateur C.
Niveau requis
aisance en programmation C
Niveau à atteindre
bonne compréhension des mécanismes de mémoire cache et d'exécution spéculative
pouvoir comprendre les performances pratiques d'un algorithme
pouvoir appréhender les futures évolutions d'architecture
Modalité d'évaluation
examen final + contrôle continu en séance de TD/TP