Caches 1 Référence à un mot Xn dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 X3 X4 X1 Xn-2 Xn-1 X5 X3.

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Ma surprise du Zoo.
Licence pro MPCQ : Cours
Additions soustractions
Distance inter-locuteur
1 Plus loin dans lutilisation de Windows Vista ©Yves Roger Cornil - 2 août
11 Bienvenue Entrez le nom du groupe ou projet ici mardi, 17 novembre 2009.
ACTIVITES NUMERIQUES Ranger les nombres Trouver le nombre manquant
Les numéros 70 –
Les numéros
Les identités remarquables
Le, la, les words Possessive Adjectives MINE!!. 2 My in french is mon, ma,mes... Le word/ begins with a vowel: Mon La word: Ma Les word: Mes.
Demande globale, élasticités et équilibre de marché
1 Linformatique : une grande cuisine. 2 Les caches Dans lexemple de la bibliothèque, le bureau fait office de cache. Cache est le nom qui a été choisi.
Introduction à la logique
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Données statistiques sur le droit doption au 31/01 8 février 2012.
Correspondances en Onco-Urologie - Vol. III - n° 3 – juillet-août-septembre VESSIE Daprès James ND et al., N Engl J Med 2012;366:16:
Technologies et pédagogie actives en FGA. Plan de latelier 1.Introduction 2.Les technologies en éducation 3.iPads 4.TNI 5.Ordinateurs portables 6.Téléphones.
Sondage sur les préjugés Ensemble et l’association d'études canadiennes 20 mars, 2013 Une recherche novatrice sur le lieu, la fréquence et les différents.
Révision (p. 130, texte) Nombres (1-100).
La législation formation, les aides des pouvoirs publics
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
SERABEC Simulation sauvetage aérien avec un Hercule C130. Départ de St-Honoré le 4 octobre Durée de vol 3 heures. Premier vol en Hercule pour les.
La méthodologie………………………………………………………….. p3 Les résultats
Jack Jedwab Association détudes canadiennes Le 27 septembre 2008 Sondage post-Olympique.
Jack Jedwab Directeur général Association détudes canadiennes Octobre 2011 Jack Jedwab Directeur général Association détudes canadiennes Octobre 2011 Est-ce.
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Présentation générale
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Le drapeau canadien comme symbole de fierté nationale : une question de valeurs partagées Jack Jedwab Association détudes canadiennes 28 novembre 2012.
Session 7 1 IST/VIH/SIDA.
Le Concours de Conaissance Francais I novembre 2012.
Si le Diaporama ne s'ouvre pas en plein écran Faites F5 sur votre clavier.
Les nombres.
Les quartiers Villeray – La Petite-Patrie et les voisinages
LES NOMBRES PREMIERS ET COMPOSÉS
CLL11 : chlorambucil (CLB) versus CLB + rituximab (R)
Matériel dont vous aller avoir besoin pour cette séance
Logiciel gratuit à télécharger à cette adresse :
Les chiffres & les nombres
Les Monnaies et billets du FRANC Les Monnaies Euro.
Calculs et écritures fractionnaires
RACINES CARREES Définition Développer avec la distributivité Produit 1
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
La statistique descriptive
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Jean-Marc Léger Président Léger Marketing Léger Marketing Les élections présidentielles américaines.
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1 INETOP
Les Nombres 0 – 100 en français.
Résoudre une équation du 1er degré à une inconnue
Aire d’une figure par encadrement
Copyright 2011 – Les Chiffres Copyright 2011 –
P.A. MARQUES S.A.S Z.I. de la Moussière F DROUE Tél.: + 33 (0) Fax + 33 (0)
Les fondements constitutionnels
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Certains droits réservés pour plus d’infos, cliquer sur l’icône.
Nom:____________ Prénom: ___________
Annexe Résultats provinciaux comparés à la moyenne canadienne
Les Chiffres Prêts?
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Memoire.
Transcription de la présentation:

Caches 1 Référence à un mot Xn dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 X3 X4 X1 Xn-2 Xn-1 X5 X3

Caches 2 Référence à un mot Xn dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 X3 X4 X1 Xn-2 Xn-1 X5 X3 UC veut faire référence à Xn 1 Xn

Caches 3 Référence à un mot Xn dans le cache Recherche de Xn dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 X3 X4 X1 Xn-2 Xn-1 X5 X3 2 Xn

Caches 4 Référence à un mot Xn dans le cache Recherche de Xn dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 X3 X4 X1 Xn-2 Xn-1 X5 X3 Xn Défaut de cache 2

Caches 5 Référence à un mot Xn dans le cache Extraction de Xn dans la mémoire Insertion dans le cache Mémoire Centrale Mémoire Centrale UC X4 X1 Xn-2 Xn-1 X5 Xn X3 X4 X1 Xn-2 Xn-1 X5 Xn X3 3

Caches 6 Bilan : Référence à un mot Xn X4 X1 Xn-2 Xn-1 X5 Xn X3 Après la référence à Xn X4 X1 Xn-2 Xn-1 X5 X3 Avant la référence à Xn

Caches 7 Questions à résoudre Question 1 : Où placer un bloc? Question 2 : Comment un bloc est-il trouvé ? Question 3 : Quel bloc remplacé lors dun défaut ? Question 4 : Comment sont traités les écritures?

Caches 8 Question 1 : Où placer un bloc? Caches à correspondances directes Caches totalement associatifs Caches associatifs par ensemble

Caches 9 Les caches à correspondance directe Le moyen le plus simple est dassigner un emplacement unique dans le cache. Cet emplacement est fonction du mot en mémoire. La correspondance est la suivante : numéro de bloc modulo le nombre de blocs dans le cache Cette structure du cache est dite à correspondance directe. adresse Rappel : Modulo n = reste de la division par n

Caches 10 Cache à correspondance directe 8 entrées Mémoire Centrale Mémoire Centrale UC Exemple :

Caches 11 Cache à correspondance directe 8 entrées UC AdresseDonnéeAdresseDonnée ?

Caches 12 Cache à correspondance directe 8 entrées UC mod 8 = 1

Caches 13 Cache à correspondance directe 8 entrées UC

Caches 14 Cache à correspondance directe 8 entrées UC Aux 4 adresses 00001, 01001, 10001, correspond la même entrée dindex (adresse dans le cache) 001 du cache Aux 4 adresses 00001, 01001, 10001, correspond la même entrée dindex (adresse dans le cache) 001 du cache

Caches 15 Cache à correspondance directe 8 entrées UC

Caches 16 Cache à correspondance directe 8 entrées UC PROBLEME : Un emplacement dans le cache peut appartenir à plusieurs emplacements mémoire. Comment savoir si la donnée correspond au mot demandé ? PROBLEME : Un emplacement dans le cache peut appartenir à plusieurs emplacements mémoire. Comment savoir si la donnée correspond au mot demandé ?

Caches 17 Cache à correspondance directe 8 entrées UC Réponse : Une Étiquette permet de savoir si le mot demandé est dans le cache DonnéeEtiquette

Caches 18 Cache à correspondance directe 8 entrées UC Index Etiquette donnée 00 01

Caches 19 Question 1 : Où placer un bloc? Caches à correspondance directe Caches totalement associatifs Caches associatifs par ensemble

Caches 20 Les caches totalement associatifs Si un bloc peut être placé nimporte où dans le cache, celui ci est totalement associatif.

Caches 21 Les caches totalement associatifs UC ?

Caches 22 Les caches totalement associatifs UC

Caches 23 Question 1 : Où placer un bloc? Caches à correspondance directe Caches totalement associatifs Caches associatifs par ensemble

Caches 24 Caches associatif par ensemble Si un bloc peut être placé dans un ensemble restreint de places dans le cache, le cache est dit associatif par ensemble de blocs. Un ensemble est un groupe de blocs dans le cache. Un bloc est dabord affecté à un ensemble, puis placé nimporte où dans lensemble. numéro de lensemble = numéro de bloc (=adresse) modulo le nombre densembles dans le cache

Caches 25 Cache associatif par ensemble de 2 UC EtDEtD Ensembles

Caches 26 Cache associatif par ensemble de 2 UC mod 4 = 1 EtDEtD

Caches 27 Alors quel cache est à utiliser ? Augmenter le degré dassociativité présente généralement lavantage de diminuer le taux de défaut. (Voir TD) Mais cela a tendance à augmenter le coût et le temps daccès.

Caches 28 But du cours Question 1 : Où placer un bloc? Question 2 : Comment un bloc est-il trouvé ? Question 3 : Quel bloc remplacé lors dun défaut ? Question 4 : Comment sont traités les écritures?

Caches 29 Organisation de la mémoire principale Adresse du mot Adresse de loctet Rappels :

Caches 30 Organisation de la mémoire principale Adresse du mot Adresse de loctet Mémoire Cache Transfert du mot de 32 bits Pour me déplacer dans le bloc il faut 2 bits dadresse

Caches 31 Comment trouver un bloc ? Réponse : Quelle est la relation de ladresse UC avec le cache ? N° ensemble Déplacement dans le bloc Cache associatif par ensemble de bloc Etiquette Déplacement dans le bloc Cache direct Etiquette Taille =Log2(blocCache)-1 Index Remarque : en augmentant dun facteur de deux lassociativité on diminue de 1 bit la taille de lindex.

Caches 32 Exemple : Cache à correspondance directe Validité Etiquettedonnée Index Succès

Caches 33 UC veut la donnée qui est à ladresse : Etiquette Index Validité Etiquettedonnée Index Adresse doctet 32 UCUC UCUC

Caches 34 Lindex sélectionne une entrée du cache : Etiquette Index Validité Etiquettedonnée Index Adresse doctet 32 UCUC UCUC

Caches 35 Compare létiquette Etiquette Index Validité Etiquettedonnée Index Adresse doctet = UCUC UCUC

Caches 36 Le mot est délivré au processeur Etiquette Index Validité Etiquettedonnée Index Adresse doctet 32 SUCCES UCUC UCUC ET

Caches 37 En cas de défaut Etiquette Index Mémoire Cache Défaut/succès Donnée Adresse UC Un défaut de cache génère une suspension (ou attente), semblable aux suspension de pipeline

Caches 38 Exemple : Par ensemble (256) de 4 blocs V ED Index V ED Succès Donnée Multiplexeur 4 par 1 4 Blocs 256 Ensembles

Caches 39 Par ensemble (256) de 4 blocs V ED Index V ED Succès Donnée Multiplexeur 4 par 1 4 Blocs 256 Ensembles Adresse doctet UCUC UCUC

Caches 40 Par ensemble (256) de 4 blocs V ED Index Adresse doctet V ED Succès Donnée Multiplexeur 4 par

Caches 41 Par ensemble (256) de 4 blocs V ED Index Adresse doctet V ED Succès Donnée Multiplexeur 4 par

Caches 42 Par ensemble (256) de 4 blocs V ED Index Adresse doctet V ED Succès Donnée Multiplexeur 4 par

Caches 43 Les étiquettes en fonction du type de caches Adresse doctet Etiquette Index Adresse doctet Etiquette Index Totalement associatif Associatif par ensemble de bloc Correspondance directe Pour des caches de même dimension :

Caches 44 But du cours Question 1 : Où placer un bloc? Question 2 : Comment un bloc est-il trouvé ? Question 3 : Quel bloc remplacé lors dun défaut ? Question 4 : Comment sont traités les écritures?

Caches 45 Quel bloc remplacé lors dun défaut ? Il existe trois stratégies principales employées pour choisir le bloc à remplacer : FIFO (Pas bonne) Le hasard (facile à réaliser) Le plus ancien (LRU Least Rencently Used). Ceci utilise un corollaire de la localité temporelle. Remarque = de LRU.

Caches 46 Les défauts de caches Défauts obligatoires de chargement (défaut de démarrage à froid). Un bloc accédé pour la première fois nest pas dans le cache. Défauts de capacité. Si le cache ne peut contenir tous les blocs nécessaires au cours de lexécution dun programme Défauts de conflits (défaut de collision). Si la stratégie de placement de bloc est associative par ensembles de blocs ou à correspondance directe, des défauts de conflit surviendront, car un bloc peut être rejeté puis récupéré si trop de blocs sont en correspondance avec le même ensemble.

Caches 47 But du cours Question 1 : Où placer un bloc? Question 2 : Comment un bloc est-il trouvé ? Question 3 : Quel bloc remplacé lors dun défaut ? Question 4 : Comment sont traités les écritures?

Caches 48 Comment sont traités les écritures? Lécriture simultanée (ou rangement simultané) : Linformation est écrite à la fois dans le bloc du cache et dans le bloc de la mémoire de niveau inférieur. La réécriture (la recopie) : Linformation est écrite uniquement dans le bloc du cache. Le bloc modifié du cache est recopié en mémoire principale uniquement quand il est remplacé.

Caches 49 Comment tirer parti de la localité spatiale ? Le cache que nous avons décrit jusquà présent ne tire pas parti de la localité spatiale dans les requêtes. En effet, chaque mot dispose de son propre bloc. EXEMPLE Supposons que les adresses doctets suivantes soient demandées par un programme :

Caches 50 Exemple : 16,...,19,...,17 UC

Caches 51 Exemple : 16,...,19,...,17 UC 16 UC Etiquette Index

Caches 52 Exemple : 16,...,19,...,17 UC 16 UC Etiquette Index DEFAUT

Caches 53 Exemple : 16,...,19,...,17 UC 16 UC Etiquette Index 10

Caches 54 Exemple : 16,...,19,...,17 UC 19 UC Etiquette Index

Caches 55 Exemple : 16,...,19,...,17 UC 19 UC Etiquette Index DEFAUT

Caches 56 Exemple : 16,...,19,...,17 UC 19 UC Etiquette Index

Caches 57 Exemple : 16,...,19,...,17 UC 17 UC Etiquette Index DEFAUT

Caches 58 Exemple : 16,...,19,...,17 UC Bilan : 3 défauts

Caches 59 Comment diminuer les défauts : Ce Dupont.... Dans mes bras THE BOSS = Augmenter la taille des blocs

Caches 60 Caches à 4 mots mémoire UC

Caches 61 Caches à 4 mots mémoire UC indexadresse dans le bloc remarque : pas détiquette 2 bits3 bits

Caches 62 Exemple : 16,...,19,...,17 UC indexadresse dans le bloc remarque : pas détiquette DEFAUT

Caches 63 Exemple : 16,...,19,...,17 UC index adresse dans le bloc remarque : pas détiquette On ramène les ref : 16,17,18,19

Caches 64 Exemple : 16,...,19,...,17 UC index adresse dans le bloc remarque : pas détiquette succès

Caches 65 Exemple : 16,...,19,...,17 UC index adresse dans le bloc remarque : pas détiquette succès

Caches 66 Exemple : 16,...,19,...,17 Bilan : 1 seul défaut survient pour trois références. SUPER : JE SUIS LE MEILLEUR

Caches 67 Exemple de réalisation Etiquette Index Validité Etiqudonnée 128 bits Index Adresse doctet 32 Mux Adresse dans le bloc

Caches 68 Exemple : 16,...,19,...,17 Bilan : 1 seul défaut survient pour trois références. SUPER : JE SUIS LE MEILLEUR DUPONT and Co

Caches 69 Si nous avons les temps daccès suivants : 1 cycle dhorloge pour envoyer ladresse 10 cycles dhorloge pour chaque accès mémoire 1 cycle dhorloge pour envoyer un mot de donnée. Total = 3* (1+10+1) = 36 cycles

Caches 70 Exemple : 16,...,19,...,17 Reprenons les chiffres précédent : 1 cycle dhorloge pour envoyer ladresse 10 cycles dhorloge pour chaque accès mémoire 1 cycle dhorloge pour envoyer un mot de donnée. Total = 1+4*10+4*1 = 45 cycles Le gain nest pas ici énorme !!!!!. Comment diminuer ce temps ?

Caches 71 Tirer parti de la localité spatiale Question : De quelle manière une plus grande taille de bloc influence-t-elle les performances ? Le taux de défauts chute lorsque nous augmentons la taille de bloc. Attention : il faut adapter le système mémoire en conséquence.

Caches 72 UC Cache Bus Mémoire UC Cache Bus Mémoire UC Cache Bus BMBM BMBM BMBM BMBM

Caches 73 Organisation dune mémoire entrelacée Adresse externe a=4b bbbbbbbb Mot 1Mot 2Mot 3Mot Mémoire entrelacée

Caches 74 Encore plus compliqué : ATTENTION (voir TD) Le taux de défaut peut augmenter, si la taille de bloc est prise très grande par rapport à la taille du cache, car le nombre de blocs pouvant être contenus dans le cache deviendra petit, et la compétition entre ces blocs sera rude. Par conséquent un bloc sera éjecté du cache avant quun grand nombre de ses mots soit accédé. Le coût du défaut croît. Car le temps nécessaire(si on ne modifie pas le système mémoire).

Caches 75 Les performances des caches Le temps UC est divisé entre les cycles dhorloge passés par lUC à exécuter le programme et les cycles dhorloge que lUC passe à attendre le système mémoire. Tps UC = (Cycles dexécution UC + Cycles dattente mémoire) * Tps C

Caches 76 Les cycles dattente mémoire Les cycles dhorloge dattente mémoire proviennent principalement des défauts de cache. (Une prédiction précise des performances implique généralement des simulations très détaillées du processeur et du système mémoire). Cycles dattente = (Nb. dinst/programmes) mémoire*(Nb. de défauts/instruction) *Coût défaut Cycles dattente = (Nb. d'accès par programme) mémoire*(taux de défaut) *Coût défaut

Caches 77 Résumé Où peut être placer un bloc ? Un corresp. direct, plusieurs (associatif par ensembles), ou tout (totalement associatif) endroit. Comment un bloc est il trouvé ? Indexation (correspondance direct) Recherche limitée (associatif par ensembles) Recherche totale (totalement associatif) Quel bloc est remplacé lors dun défaut ? Généralement, soit le moins récemment utilisé, soit un bloc au hasard, de manière aléatoire. Comment sont traitées les écritures ? Chaque niveau de la hiérarchie peut utiliser soit lécriture simultanée soit la réécriture.

Caches 78 Résumé Le défi lancé par la conception des hiérarchies de mémoires est que tout changement qui peut améliorer le taux de défauts peut aussi affecter de façon négative les performances globales. Cest une combinaison d'effets positifs et négatifs pour chaque paramètre de conception qui rend délicate la conception dune hiérarchie de mémoires Changement de Conception Augmenter la taille Augmenter lassociativité Augmenter la taille de bloc Effet sur le taux de défauts Réduit les défauts de capacité Réduit le taux de défaut dû aux défauts de conflit Réduit le taux de défaut pour un large éventail de tailles de bloc Effet négatif possible sur les performances Peut augmenter le Tps daccès Peut augmenter le temps daccès Peut augmenter le coût de défaut

Caches 79 Caches : taille des blocs Coût de léchec Tps transfert Tps daccès Taille du bloc Taux déchec T ps daccès Augmenter la taille du cache indéfiniment

Caches 80