Chapitre 3 - Hiérarchie Mémoire
Chapitre 3 - Hiérarchie Mémoire
Chapitre 3 - Hiérarchie Mémoire
2019-2020
2
Objectifs du chapitre
• Définir la hiérarchie mémoire
• Décrire le fonctionnement de la mémoire cache
• Evaluer l’effet d’une mémoire cache sur la performance globale
• Connaitre les différentes techniques de conception des mémoires
caches
• Comparer les différentes techniques de conception des mémoires
caches
• Lister les techniques utilisées pour améliorer la performance de la
mémoire cache
3
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
4
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
5
▫ Capacité
• Taux de transfert
▫ Taux avec lequel les données sont transférées vers ou hors de la mémoire
▫ Cas des mémoires à accès aléatoire
Taux de transfert 1
Temps _ Cycle
9
• Dilemme
▫ De plus grandes capacités impliquent des temps d’accès plus élevés
▫ Des temps d’accès plus courts impliquent un plus grand coût par bit
11
• Solution
▫ Ne pas se baser sur un composant ou une technologie mémoire uniques
▫ Utiliser une hiérarchie mémoire
12
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
13
Hiérarchie mémoire
• Types de mémoires
Registres Disque
Mémoire Mémoire dur
Processeur cache centrale
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
▫ Processeur n’a jamais besoin de toutes les données au même moment et
de la même façon
▫ Règle générale des programmes : 90% du temps d’exécution est passé dans
10% du code (cas courant) Principe de localité
15
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
▫ Principe de localité : Passé proche prédit le futur proche
▫ Localité spatiale : Les éléments dont les adresses sont proches ont
tendance à être accéder dans des temps proches (nature séquentielle des
programmes)
16
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
▫ Conserver les éléments les plus utilisés dans les mémoires les plus rapides
Rendre le cas courant plus rapide améliorer les performances
Mémoires de faible capacité mais très rapides pour les éléments les
plus utilisés
Mémoires de grande capacité mais très lentes pour les éléments les
moins utilisés
17
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
▫ Plusieurs couches de mémoires de différents types
▫ Mémoires rapides, de petite taille, plus coûteuses, plus proches du
processeur
▫ Mémoires moins rapides, moins coûteuses, de plus grande capacité, plus
éloignées du processeur
18
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
Mémoire secondaire
Mémoire centrale
Cache
Registres
Taille Taille
Processeur
Temps d’accès Temps d’accès
Coût Coût
19
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
Niveau 1 2 3 4
Mémoire
Nom Registres Cache Mémoire centrale
secondaire
Taille typique < 1 KB 32 KB-8 MB < 512 GB > 1 TB
Temps d'accès (ns) 0.15-0.30 0.5-15 30-200 5,000,000
100,000-
Débit MB/sec 10,000-40,000 5000-20,000 50-500
1,000,000
Caractéristiques d'une hiérarchie mémoire moyenne pour un PC de base -
Patterson and Hennessy 2012
20
Hiérarchie mémoire
• Principe de la hiérarchie mémoire
Mémoire secondaire
Mémoire centrale
Cache
Registres
Taille Taille
Processeur
Temps d’accès Temps d’accès
Coût Coût
21
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
22
Mémoire Mémoire
Processeur
cache centrale
Transfert Transfert
par mot par bloc
23
@ existe
@ NON
dans le
cache
Processeur OUI
Donnée Transférer
donnée à
l’UC @
Chercher Mémoire
un bloc centrale
Stocker Donnée
bloc dans dans la MC
le cache et
HIT transférer
donnée à
MISS l’UC
24
Lm-1
@0 … @K-1
@2n-1
Buffer de données
Données
26
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
27
Le processeur sans MISS est 1.75 fois plus rapide que le processeur avec MISS
33
Contenu du chapitre
• Introduction
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
34
SET 0
23 1
24
25
2
3
placé n’importe où dans
26 4
le set 0 (0-3)
SET 1
27 5
28
29
6
7
20 mod 2 = 0
30
31 4-way set-associative
41
Mot 0
@ UC TAG INDEX OFFSET Mot 1 Bi
Mot 2
42
▫ Aléatoire (RANDOM)
Facile à implémenter
Accès à la MC à chaque écriture
Ecriture immédiate La MC a la version la plus récente des
(ralentissement)
données (cohérence des données)
▫ Défaut conflictuel : Des blocs qui sont assignés aux mêmes lignes et qui ne
peuvent pas être ensembles dans le cache
Contenu du chapitre
• Introduction.
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
53
1. L1 seulement
Temps_Accès_Moyen = 1 + 0.1 x 80 = 9 cycles
2. L1 et L2
Temps_Accès_Moyen = 1 + 0.1 x (10 + 0.02 x 80) = 1 + 1 + 0.16 = 2.16 cycles
58
Processeur
Coût Coût
59
Processeur
L1 L2 L3
SRAM DRAM SRAM
60
Contenu du chapitre
• Introduction.
• Définition de la hiérarchie mémoire
• Fonctionnement de la mémoire cache
• Effet de la mémoire cache sur la performance
• Techniques de conception de la mémoire cache
• Techniques d’amélioration de la performance de la mémoire cache
• Synthèse et conclusion
61
Synthèse et conclusion
• Hiérarchie mémoire
• Mémoire cache
• Performance de la mémoire cache
• Conception de la mémoire cache
• Amélioration du temps d’accès au cache