Information Calcul Communication Systmes Informatiques Leon 2 Mmoires

  • Slides: 10
Download presentation
Information, Calcul, Communication Systèmes Informatiques – Leçon 2: Mémoires Hiérarchiques – Clip 9: Localité

Information, Calcul, Communication Systèmes Informatiques – Leçon 2: Mémoires Hiérarchiques – Clip 9: Localité B. Falsafi, A. Schiper, W. Zwaenepoel, A. Ailamaki, commentaire: P. Janson 1 / 10 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

Où en sommes-nous ? 1. Technologie des mémoires 2. Hiérarchie de mémoires Concept Objectif

Où en sommes-nous ? 1. Technologie des mémoires 2. Hiérarchie de mémoires Concept Objectif Réalisation 2. 3. 4. 5. 6. 7. 8. 9. 2 / 10 Lecture Ecriture Gestion LRU Exemple Pourquoi – Localité 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

Revoyons de plus près la boucle de la somme de n entiers somme des

Revoyons de plus près la boucle de la somme de n entiers somme des premiers n entiers entrée : n sortie : m s 0 tant que n > 0 s s+n n n– 1 m s 3 / 10 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

er 1 phénomène: Accès répétés à des addresses identiques Tant que n > 0

er 1 phénomène: Accès répétés à des addresses identiques Tant que n > 0 s s+n n n– 1 4 / 10 lire @13 (en cache dans n-1 cas) charger bloc @12 placer bloc @12 retourner 2 lire @14 (en cache) retourner 0 lire @13 (en cache) retourner 2 somme s, n (0 + 2) écrire 2 @14 (en cache) lire @13 (en cache) retourner 2 somme n, -1 (2 – 1) écrire 1 @ 13 (en cache) Proc cache n s 12 ? mémoire principale 0 4 8 12 m n s 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

C’est ce qu’on appelle la localité temporelle En cache parce qu’il y a eu

C’est ce qu’on appelle la localité temporelle En cache parce qu’il y a eu des accès à la même variable à des instants rapprochés dans le temps ● 12 n s C’est typique de la réalité ● Tous les algorithmes “intéressants” accédant de façon répétée aux mêmes variables ●(Pendant une semaine à la neige, on réutilise son snowboard tous les jours) ● 5 / 10 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

er 1 phénomène: Accès consécutifs à des addresses proches Tant que n > 0

er 1 phénomène: Accès consécutifs à des addresses proches Tant que n > 0 s s+n n n– 1 6 / 10 lire @13 charger bloc @12 placer bloc @12 retourner 2 lire @14 (en cache) retourner 0 lire @13 (en cache) retourner 2 somme s, n (0 + 2) écrire 2 @14 (en cache) lire @13 (en cache) retourner 2 somme n, -1 (2 – 1) écrire 1 @ 13 (en cache) Proc cache n s 12 ? mémoire principale 0 4 8 12 m n s 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

C’est ce qu’on appelle la localité spatiale En cache parce qu’il y a eu

C’est ce qu’on appelle la localité spatiale En cache parce qu’il y a eu des accès à des variables différentes mais à des adresses rapprochées dans l’espace ● 12 n s C’est typique de la réalité ● Tous les algorithmes “intéressants” travaillent avec une série de variables liées entre elles ●(Si on va skier, on a besoin du ski gauche et du ski droit … et des bottines associées) ● 7 / 10 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

Et si les blocs étaient plus petits Proc 2 mots au lieu de 4

Et si les blocs étaient plus petits Proc 2 mots au lieu de 4 ● Plus de petits blocs en cache ● n et s seraient dans des blocs différents ● 12 14 cache s n => Cela causerait 2 défauts de cache au lieu de 1 => Moins de localité spatiale mais … … performance maintenue avec une cache plus petite 8 / 10 mémoire principale 0 2 : 12 14 : s m : n 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

Et si les blocs étaient plus grands 8 mots au lieu de 4 ●

Et si les blocs étaient plus grands 8 mots au lieu de 4 ● Proc Moins de grands blocs en cache ● m, n, et s ne peuvent pas être en mémoire en même temps cache ● 8 => Cela causerait 2 défauts de cache au lieu de 1 à chaque exécution du programme 0 => Moins de localité temporelle mais … 8 … performance maintenue avec une cache plus grande 9 / 10 n s s mémoire principale m n s s 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité

Localité spatiale & temporelle vs. taille des blocs Plus de défauts de cache Beaucoup

Localité spatiale & temporelle vs. taille des blocs Plus de défauts de cache Beaucoup de petits blocs Quelques grands blocs üMeilleure localité temporelle üMeilleure localité spatiale ✗Moins bonne localité temporelle Optimum dépendant de la taille de la cache et de la nature du programme Blocs plus grands 10 / 10 3. Systèmes Informatiques – 2. Mémoires Hiérarchiques – 9. Localité