Enseignement (2013-2016)
2015, Université Paris-Sud, L3, Architecture des ordinateurs
Responsables de la matière : Lénaïc Bagnères.
Mohamed Yassine Tsalamlal assure les TD et TP du deuxième groupe.
Simulateurs MIPS32 et ARM
SPIM : A MIPS32 Simulator (spim
& xspim
)
Installation
Script bash
pour compiler xspim
et l'installer dans le dossier $HOME
: xspim.sh
.
Script bash
pour compiler xspim
et l'installer dans le dossier $HOME
: spimsimulator-code.zip
et xspim_local.sh
.
Mettre l'archive .zip
et le script .sh
dans le même dossier. Lancer un terminal dans ce dossier et exécuter le script avec la commande suivante :
bash ./xspim_local.sh
Utilisation
~/usr/bin/xspim <fichier_mips32.s>
Ne pas hésiter à modifier la variable d'environnement PATH
pour simplifier le lancement des applications.
MARS (MIPS Assembler and Runtime Simulator)
Installation
Script bash
pour installer MARS
dans le dossier $HOME
: Mars4_5.jar
et mars_local.sh
.
Mettre le .jar
et le script .sh
dans le même dossier. Lancer un terminal dans ce dossier et exécuter le script avec la commande suivante :
bash ./mars_local.sh
Utilisation
~/usr/bin/mars.sh
Ne pas hésiter à modifier la variable d'environnement PATH
pour simplifier le lancement des applications.
ARMSim
ARMSim
est un logiciel propriétaire « free for academic use ».
Installation
ARMSim#
est développé pour Microsoft Windows mais fonctionne aussi avec Mono
(mais pas sur Debian GNU/Linux stable d'octobre 2015) et avec Wine
(le script que je propose utilise Wine
).
Script bash
pour installer ARMSim#
dans le dossier $HOME
: ARMSim-191.zip
et armsim_local.sh
.
Mettre l'archive .zip
et le script .sh
dans le même dossier. Lancer un terminal dans ce dossier et exécuter le script avec la commande suivante :
bash ./armsim_local.sh
Utilisation
~/usr/bin/armsim.sh
Ne pas hésiter à modifier la variable d'environnement PATH
pour simplifier le lancement des applications.
qtarmsim
Il existe aussi qtarmsim
, mais la version que j'ai testée ne supporte pas certaines instructions (MOV
avec décalage).
Cartes de référence
TP et TD
Semaine 38
2015/09/15
Cours Amphi : Introduction (1,5h) [PDF][PDF]
Cours Amphi : Jeux d'instructions (1,5h) [PDF]
2015/09/18
Cours Amphi : Jeux d'instructions (1,5h)
Semaine 39
2015/09/22
TP Groupe 1 : TD 1 : Modèles d'exécution : instructions arithmetiques et logiques (3h) [PDF]
2015/09/25
Cours Amphi : Caches et mémoire virtuelle (1,5h) [PDF]
Semaine 40
2015/09/29
TP Groupe 1 : TD + TP 2 : Organisation des données en mémoire - Instructions mémoire (3h) [PDF][Code source]
2015/10/02
Cours Amphi : Caches et mémoire virtuelle (1,5h)
Semaine 41
2015/10/06
TP Groupe 1 : TD + TP 3 : Conditionnelles et boucles (3h) [PDF][Code source]
2015/10/09
Cours Amphi : Pipeline (1,5h) [PDF]
Semaine 42
2015/10/13
TP Groupe 1 : TD + TP 4 : Fonctions et procédures (3h) [PDF][Code source]
2015/10/16
Cours Amphi : Problèmes du pipeline (1,5h) [PDF]
Semaine 43
Réserve / Vacances
Semaine 44
2015/10/30
Partiel (1,5h) (+ 0,5h si tiers temps) (Tous documents papier autorisés)
Semaine 45
2015/11/03
TP Groupe 1 : TD 5 : Caches (3h) [PDF]
2015/11/06
Cours Amphi : Architectures et programmes parallèles (1,5h) [PDF]
Semaine 46
2015/11/10
TP Groupe 1 : TD 6 : Pipelines & Opérations multicycles & Prédiction de branchement (3h) [PDF]
2015/11/13
Cours Amphi : OpenMP (~2h) [PDF]
Cours Amphi : TD 6 (rattrapage retard groupe 2) (~1h)
Semaine 47
2015/11/17
TP Groupe 1 : TP 7 (noté) : Optimisations & Parallélisation (~2h) [PDF][Code à compléter] + Correction partiel (~1h)
Semaine 48
2015/11/24
TP Groupe 1 : TP 7 (noté) : Optimisations & Parallélisation (3h)
2015/11/27
Cours Amphi : Extensions SIMD (1,5h) [PDF]
Semaine 49
2015/12/01
TP Groupe 1 : TP 8 : Streaming SIMD Extensions (SSE) (3h) [PDF][Code à compléter]
2015/12/04
Cours Amphi : Boost.MPI [Exemple], HPX [Exemple], Pluto, CUDA [Exemple] (1,5h)
Semaine 50
Réserve
Semaine 51
2015/12/18
Examen (1,5h) (+ 0,5h si tiers temps) (Tous documents papier autorisés)