Organisation de la mémoire

Transcription

Organisation de la mémoire
1/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Architecture des systèmes informatiques
Chapitre 11 - Organisation de la mémoire
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Idir AIT SADOUNE
CentraleSupélec - Département Informatique
3, rue Joliot-Curie, 91192 Gif-sur-Yvette cedex
<[email protected]>
Année scolaire 2015-2016, Séquence 5
Accélération des
calculs
Outline
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Types de mémoires
Caractéristiques
Technologies mémoire utilisées
Accélération des calculs
2/25
Accélération des
calculs
Classification
3/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
Localisation
I
I
I
Mémoire interne au
processeur
Mémoire centrale
Mémoire externe (ou «
de masse » ou «
auxiliaire »)
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Classification
3/25
11 - Organisation
de la mémoire
I. Ait Sadoune
I
I
Localisation
I
I
I
Mémoire interne au
processeur
Mémoire centrale
Mémoire externe (ou «
de masse » ou «
auxiliaire »)
Caractéristiques
physiques
I
I
I
I
Volatile / non volatile
Lecture seule / lecture
et écriture
Lecture destructive /
non destructive
Effaçable / non
effaçable
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Classification
11 - Organisation
de la mémoire
I. Ait Sadoune
I
I
Localisation
I
I
I
I
3/25
Mémoire interne au
processeur
Mémoire centrale
Mémoire externe (ou «
de masse » ou «
auxiliaire »)
Méthode d’accès
I
I
I
I
I
Accès aléatoire
(arbitraire)
Accès FIFO, LIFO
Accès associatif
Accès direct
Accès séquentiel
Caractéristiques
physiques
I
I
I
I
Volatile / non volatile
Lecture seule / lecture
et écriture
Lecture destructive /
non destructive
Effaçable / non
effaçable
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Deux sigles importants
4/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
RAM (Random Access Memory)
I accès en lecture/écriture
I accès aléatoire
I volatile
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Deux sigles importants
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
RAM (Random Access Memory)
I accès en lecture/écriture
I accès aléatoire
I volatile
ROM (Read-Only Memory)
I accès en lecture seule
I accès aléatoire
I non volatile (bien entendu !)
4/25
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
5/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
SRAM : Static RAM
I
I
une bascule bistable (6 transistors)
par bit
très rapide et très chère
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
5/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
SRAM : Static RAM
I
I
une bascule bistable (6 transistors)
par bit
très rapide et très chère
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
I
DRAM : Dynamic RAM
I
I
I
I
chaque bit stocké dans un
condensateur
besoin de recharger les
condensateurs (rafraîchissement,
consommation de temps)
1 transistor + 1 condensateur par
bit
beaucoup moins chère, beaucoup
moins rapide
Sortes de RAM
6/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
PROM : Programmable ROM
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
6/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
PROM : Programmable ROM
I
EPROM : Erasable Programmable ROM (aux UV)
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
6/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
PROM : Programmable ROM
I
EPROM : Erasable Programmable ROM (aux UV)
I
EEPROM : Electrically Erasable Programmable ROM
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
6/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
PROM : Programmable ROM
I
EPROM : Erasable Programmable ROM (aux UV)
I
EEPROM : Electrically Erasable Programmable ROM
I
Flash : EEPROM effacée/programmée par blocs
Technologies
mémoire utilisées
Accélération des
calculs
Sortes de RAM
6/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
PROM : Programmable ROM
I
EPROM : Erasable Programmable ROM (aux UV)
I
EEPROM : Electrically Erasable Programmable ROM
I
Flash : EEPROM effacée/programmée par blocs
I
Aussi : CD-ROM, DVD-ROM, BD-ROM
Technologies
mémoire utilisées
Accélération des
calculs
Caractéristiques
7/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Technologies mémoire utilisées
8/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
Mémoire externe - auxiliaire –> disque dur (HDD :
disques durs hybrides), flash (SSD : pour Solid State
Drive, contrôleur à semi-conducteurs)
Technologies
mémoire utilisées
Accélération des
calculs
Technologies mémoire utilisées
8/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
I
Mémoire externe - auxiliaire –> disque dur (HDD :
disques durs hybrides), flash (SSD : pour Solid State
Drive, contrôleur à semi-conducteurs)
Mémoire centrale –> DRAM (raison : coût)
Technologies
mémoire utilisées
Accélération des
calculs
Technologies mémoire utilisées
8/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
I
I
Mémoire externe - auxiliaire –> disque dur (HDD :
disques durs hybrides), flash (SSD : pour Solid State
Drive, contrôleur à semi-conducteurs)
Mémoire centrale –> DRAM (raison : coût)
Accélération : mémoire cache
I
I
petite quantité de SRAM dans le processeur (typ. 8
Mo)
contient les données en cours d’utilisation
Technologies
mémoire utilisées
Accélération des
calculs
Deux constats
9/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Proximité temporelle
I Quand un processeur va chercher un mot en mémoire, il y a de fortes
chances qu’il aura besoin du même mot peu après
I Garder les mots utilisés récemment dans une mémoire rapide
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Deux constats
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Proximité temporelle
I Quand un processeur va chercher un mot en mémoire, il y a de fortes
chances qu’il aura besoin du même mot peu après
I Garder les mots utilisés récemment dans une mémoire rapide
Proximité spatiale
I Quand un processeur va chercher un mot en mémoire, il y a de fortes
chances qu’il ait besoin d’un mot voisin peu après
I Ne pas stocker un mot isolé dans la mémoire rapide, mais un bloc de
mots contigus en mémoire
9/25
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Principe du cache
10/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Organisation d’un cache
11/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
La mémoire est vue “artificiellement” découpée en
blocs de M = 2m mots
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Organisation d’un cache
11/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
La mémoire est vue “artificiellement” découpée en
blocs de M = 2m mots
I
Un cache est organisé sous forme de N lignes,
chaque ligne pouvant contenir un bloc (pas toujours
le même)
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Organisation d’un cache
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
La mémoire est vue “artificiellement” découpée en
blocs de M = 2m mots
I
Un cache est organisé sous forme de N lignes,
chaque ligne pouvant contenir un bloc (pas toujours
le même)
I
11/25
Chaque ligne possède un descripteur permettant de
savoir quel est le bloc actuel qu’elle contient
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Fonctionnement du cache
12/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Questions à résoudre
13/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
Comment est déterminé l’ensemble E des lignes
pouvant contenir un bloc (organisation) ?
Technologies
mémoire utilisées
Accélération des
calculs
Questions à résoudre
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
I
13/25
Comment est déterminé l’ensemble E des lignes
pouvant contenir un bloc (organisation) ?
Quel choix pour L quand le bloc B n’est pas dans le
cache (algorithmes de remplacement) ?
Technologies
mémoire utilisées
Accélération des
calculs
Questions à résoudre
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
I
13/25
Comment est déterminé l’ensemble E des lignes
pouvant contenir un bloc (organisation) ?
I
Quel choix pour L quand le bloc B n’est pas dans le
cache (algorithmes de remplacement) ?
I
Que faut-il faire pour purger une ligne (stratégie
d’écriture) ?
Technologies
mémoire utilisées
Accélération des
calculs
Organisation : directement adressé
14/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
Un bloc donné ne peut aller que dans une seule ligne
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Organisation : purement associatif
15/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
Un bloc donné peut aller partout dans le cache
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Organisation : associatif par sous-ensembles
16/25
11 - Organisation
de la mémoire
I. Ait Sadoune
I
Un bloc donné peut aller dans un sous-ensemble du
cache
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Exemple
17/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
I
Les adresses sont sur 32 bits (mémoire de 4 Gmots)
I
Le cache contient 4096 lignes, un bloc contient 16
mots
Entraînement :
I
I
I
taille du cache ?
combien de bits pour coder le déplacement dans un
bloc ?
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Cache directement adressé
18/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Cache purement associatif
19/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Cache associatif par sous-ensembles
20/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Algorithmes de remplacement
21/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
I
Algorithmes :
I
I
I
I
Random
FIFO
LRU (Least Recently Used)
NRU (Not Recently Used)
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Algorithmes de remplacement
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
I
Algorithmes :
I
I
I
I
I
21/25
Random
FIFO
LRU (Least Recently Used)
NRU (Not Recently Used)
Par ligne : de 1 à k bits supplémentaires pour gérer
le remplacement + 1 bit de validité
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Stratégies d’écriture
22/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
I
Écriture simultanée (write-through)
I
I
Inconvénient : performance
Avantage : cohérence entre cache et mémoire
centrale
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Stratégies d’écriture
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
I
Écriture simultanée (write-through)
I
I
I
Écriture différée (write-back)
I
I
I
22/25
Inconvénient : performance
Avantage : cohérence entre cache et mémoire
centrale
1 bit W pour chaque ligne
Avantage : performance
Inconvénient : cohérence
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Hiérarchie mémoire
23/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
I
Plusieurs niveaux : L1, L2
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
24/25
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
I
Plusieurs niveaux : L1, L2
I
Localisation du cache (interne ou externe au
processeur)
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
24/25
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
I
Plusieurs niveaux : L1, L2
I
Localisation du cache (interne ou externe au
processeur)
I
Caches séparés pour les instructions et les données
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
24/25
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
24/25
I
Plusieurs niveaux : L1, L2
I
Localisation du cache (interne ou externe au
processeur)
I
Caches séparés pour les instructions et les données
I
Cohérence du cache en présence d’un DMA
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
24/25
I
Plusieurs niveaux : L1, L2
I
Localisation du cache (interne ou externe au
processeur)
I
Caches séparés pour les instructions et les données
I
Cohérence du cache en présence d’un DMA
I
Cohérence du cache dans les systèmes
multi-processeurs
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Compléments
11 - Organisation
de la mémoire
I. Ait Sadoune
I
Plusieurs niveaux : L1, L2
I
Localisation du cache (interne ou externe au
processeur)
I
Caches séparés pour les instructions et les données
I
Cohérence du cache en présence d’un DMA
I
Cohérence du cache dans les systèmes
multi-processeurs
hit et miss
Hit : mot présent dans le cache Thit Phit
Miss : mot absent du cache Tmiss Pmiss = 1 − Phit
Temps moyen d’accès à la mémoire :
Tmoyen = Phit xThit + Pmiss xTmiss
24/25
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs
Exemple : hiérarchie mémoire Athlon 64
25/25
11 - Organisation
de la mémoire
I. Ait Sadoune
Classification
Types de
mémoires
Caractéristiques
Technologies
mémoire utilisées
Accélération des
calculs