Qu'est-ce que le cache ?
le cache est appelé mémoire cache, qui est une mémoire à grande vitesse et de petite capacité entre l'unité centrale et la mémoire principale. Elle est généralement composée de SRAM à grande vitesse, ce type de mémoire locale est orienté vers le CPU, et il est introduit pour réduire ou éliminer la connexion entre le processeur et la mémoire principale. L'impact des différences de vitesse entre les mémoires sur les performances du système. La capacité du cache est petite mais rapide, la vitesse de la mémoire est faible mais la capacité est grande. En optimisant l'algorithme de planification, les performances du système seront grandement améliorées.
L'environnement d'exploitation de ce tutoriel : système Windows 7, ordinateur Dell G3.
Qu'est-ce que le cache ?
Mémoire cache : La mémoire cache d'un ordinateur est une mémoire petite mais à grande vitesse située entre le CPU et la mémoire principale DRAM (Dynamic Random Access Memory), généralement composée de SRAM (Static Random Access Memory). Mémoire vive).
Comme le montre la figure 3.28, le cache est une mémoire de petite capacité entre le CPU et la mémoire principale M2, mais la vitesse d'accès est plus rapide que la mémoire principale et la capacité est beaucoup plus petite que la mémoire principale. Le cache peut fournir des instructions et des données au processeur à grande vitesse, accélérant ainsi l'exécution du programme. D'un point de vue fonctionnel, il s'agit d'une mémoire tampon de la mémoire principale, composée de SRAM à grande vitesse. Dans la recherche d'une vitesse élevée, toutes les fonctions, y compris la gestion, sont implémentées dans le matériel et sont donc transparentes pour les programmeurs.
Actuellement, avec les progrès de l'intégration des dispositifs semi-conducteurs, les caches et les processeurs de petite capacité peuvent être intégrés dans la même puce, et leur vitesse de fonctionnement est proche de la vitesse du processeur, formant ainsi un système de cache à deux niveaux ou plus. .
Fonction du cache
La fonction du cache est d'augmenter le taux d'entrée et de sortie des données du processeur. La capacité du cache est petite mais rapide, la vitesse de la mémoire est faible mais la capacité est grande. En optimisant l'algorithme de planification, les performances du système seront grandement améliorées, comme si la capacité du système de stockage était équivalente à la mémoire et que la vitesse d'accès était similaire à celle-ci. la Cache.
La vitesse du CPU est bien supérieure à celle de la mémoire. Lorsque le CPU accède directement aux données de la mémoire, il doit attendre un certain temps, tandis que le cache peut enregistrer une partie des données du CPU. vient d'être utilisée ou recyclée, si le CPU a besoin de réutiliser cette partie des données. Elle peut être appelée directement depuis le Cache, ce qui évite les accès répétés aux données, réduit le temps d'attente du CPU, et améliore ainsi l'efficacité du système. . Le cache est divisé en L1Cache (cache de niveau un) et L2Cache (le cache de niveau deux est principalement intégré au CPU, tandis que L2Cache est intégré sur la carte mère ou le CPU).
Principes de base du cache
En plus de la SRAM, le cache dispose également d'une logique de contrôle. Si le cache est à l'extérieur de la puce CPU, sa logique de contrôle est généralement combinée avec la logique de contrôle de la mémoire principale, appelée contrôleur de mémoire principale/chace ; si le cache est à l'intérieur du CPU, le CPU fournit sa logique de contrôle ; C L'échange de données entre le CPU et le cache est basé sur des mots, tandis que l'échange de données entre le cache et la mémoire principale est basé sur des blocs. Un bloc est composé de plusieurs mots et a une longueur fixe. Lorsque le CPU lit un mot en mémoire, il envoie l'adresse mémoire du mot au cache et à la mémoire principale. A ce moment, la logique de contrôle du cache détermine si le mot est actuellement dans le cache en fonction de l'adresse : si c'est le cas, le cache arrive et le mot est immédiatement transféré au CPU, sinon, le cache est manquant (manqué), et ; le cycle de lecture de la mémoire principale est utilisé pour lire le mot dans la mémoire principale. La lecture est envoyée au CPU. En même temps, l'intégralité du bloc de données contenant ce mot est lue dans la mémoire principale et envoyée au cache.
La figure 3.29 montre le diagramme schématique du cache. Supposons que le temps de lecture du cache soit de 50 ns et que le temps de lecture de la mémoire principale soit de 250 ns. Le système de stockage est modulaire, et chaque module 8K de la mémoire principale est associé à un cache d'une capacité de 16 mots. Le cache est divisé en 4 lignes, chaque ligne comporte 4 mots (W). L'adresse attribuée au cache est stockée dans une mémoire associative CAM, qui est une mémoire adressable par le contenu. Lorsque le CPU exécute une instruction d'accès à la mémoire, il envoie l'adresse du mot auquel accéder au CAM si W n'est pas dans le cache, W est transféré de la mémoire principale vers le CPU ; Dans le même temps, une ligne de données composée de quatre mots consécutifs contenant W est envoyée au cache, remplaçant la ligne de données d'origine dans le cache. Ici, l'algorithme de remplacement est implémenté par des circuits logiques matériels qui gèrent toujours l'utilisation du cache.
Taux de réussite du cacheDu point de vue du processeur, le but de l'ajout de cache est de rendre le temps de lecture moyen de la mémoire principale aussi proche que possible du temps de lecture du cache en termes de performances. Afin d'atteindre cet objectif, la part de tous les accès mémoire qui est satisfaite par le cache pour répondre aux besoins du processeur doit représenter une proportion élevée, c'est-à-dire que le taux de réussite du cache doit être proche de 1. Atteindre cet objectif est possible grâce à la localité d’accès au programme.
Lors de l'exécution d'un programme, soit Nc représente le nombre total d'accès effectués par le cache, Nₘ représente le nombre total d'accès effectués par la mémoire principale, et h est défini comme le taux de réussite, alors h=Nc/( Nc+Nₘ)
Si tc représente le temps d'accès au cache lorsqu'un hit se produit, tₘ représente le temps d'accès à la mémoire principale lorsqu'un échec se produit, 1-h représente le taux d'échec (taux manquant), puis le temps d'accès moyen tₐ du cache/ le système de mémoire principale est
tₐ=htc+(1−h)tₘ
L'objectif que nous poursuivons est de rendre le temps d'accès moyen tₐ du système cache/mémoire principale aussi proche que possible de tc avec un faible coût matériel. Supposons que r = tₘ/tc représente le rapport du temps d'accès entre la mémoire principale et le cache, et e représente l'efficacité de l'accès, alors
e=tc/ta=tc/(htc+(1−h)tm)=1/(h+(1−h)r)=1/(r+(1−r)h)
On peut voir à partir de cette formule que pour améliorer l'efficacité de l'accès, plus le taux de réussite h est proche à 1, mieux c'est. La valeur r appropriée est comprise entre 5 et 10 et ne doit pas être trop élevée.
Le taux de réussite h est lié au comportement du programme, à la capacité du cache, à la méthode d'organisation et à la taille des blocs.
Problèmes qui doivent être résolus dans la conception de la structure du cache
Il ressort du principe de fonctionnement de base du cache que la conception du cache doit suivre deux principes : Premièrement, nous espérons que le taux de réussite du cache est aussi élevé que possible, qui devrait en fait être proche de 1 ; La seconde est d'espérer que le cache soit transparent pour le CPU, c'est-à-dire qu'il y ait ou non un cache, le CPU accède à la mémoire de la même manière et le logiciel peut y accéder. le cache sans ajouter d'instructions. Les problèmes de taux de réussite et de transparence sont résolus du point de vue de l'accès à la mémoire du CPU, la mémoire aura la capacité de la mémoire principale et une vitesse proche du cache. À cette fin, un certain circuit matériel doit être ajouté pour compléter la fonction de contrôle, c'est-à-dire le contrôleur de cache.
Lors de la conception de la structure du cache, plusieurs problèmes doivent être résolus : ① Comment stocker le contenu de la mémoire principale lorsqu'il est transféré dans le cache ? ② Comment retrouver les informations dans le cache lors de l'accès à la mémoire ? les informations existantes dans le cache lorsque l'espace du cache est insuffisant Contenu ? ④ Comment réécrire le contenu du cache lorsqu'une opération d'écriture est requise
Parmi elles, les deux premières questions sont liées les unes aux autres, c'est-à-dire comment localiser le ? informations sur la mémoire principale dans le cache et comment convertir l'adresse de la mémoire principale en adresse de cache. Par rapport à la capacité de la mémoire principale, la capacité du cache est très petite. Le contenu qu'il enregistre n'est qu'un sous-ensemble du contenu de la mémoire principale, et l'échange de données entre le cache et la mémoire principale s'effectue en unités de bloc. Afin de placer le bloc de mémoire principale dans le cache, une méthode doit être utilisée pour localiser l'adresse de la mémoire principale dans le cache, appelée mappage d'adresses. La signification physique du mot « mappage » est de déterminer la relation correspondante entre les emplacements et de la mettre en œuvre avec du matériel. De cette façon, lorsque le CPU accède à la mémoire, l'adresse mémoire d'un mot qu'il donne sera automatiquement convertie en adresse de cache, c'est-à-dire la conversion d'adresse de cache.
Le problème du remplacement du cache consiste principalement à sélectionner et à exécuter l'algorithme de remplacement pour remplacer le contenu du cache lorsque le cache manque. La dernière question concerne la stratégie d'opération d'écriture du cache, qui se concentre sur le maintien de la cohérence entre la mémoire principale et le cache lors des mises à jour.
Pour plus de connaissances connexes, veuillez visiter la rubrique FAQ !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La mémoire à accès le plus rapide est la « mémoire interne » ; la mémoire de l'ordinateur adopte une structure hiérarchique, classée par ordre de vitesse, comprenant la mémoire interne, la mémoire cache, la mémoire principale de l'ordinateur et les disques de grande capacité. La mémoire est généralement divisée en. Mémoire RAM à accès aléatoire et mémoire ROM en lecture seule.

La chose est en fait comme ça. À ce moment-là, mon chef m'a confié une tâche de surveillance des performances du matériel. Pendant le processus d'utilisation de perf, j'ai entré la liste des commandes perf et j'ai vu les informations suivantes : Ma tâche est d'activer ces événements de cache. être compté normalement. Mais le fait est que je n'ai aucune idée de ce que signifient ces ratés et ces charges.

Accessible directement. La mémoire interne, également appelée mémoire, constitue le pont entre la mémoire externe et le processeur. Tous les programmes de l'ordinateur s'exécutent en mémoire. La fonction de la mémoire est de stocker temporairement les données de calcul dans le CPU et les données échangées avec des mémoires externes telles que des disques durs. Tant que l'ordinateur est en marche, le système d'exploitation transférera les données qui doivent être calculées de la mémoire au CPU pour le calcul. Une fois le calcul terminé, le CPU transmettra les résultats. Le fonctionnement de la mémoire détermine également les résultats. fonctionnement stable de l'ordinateur.

La base pour qu’un ordinateur ait une forte capacité de mémoire est un périphérique de stockage doté d’une capacité suffisante. La mémoire peut être divisée en mémoire interne et mémoire externe. Elles permettent aux ordinateurs de disposer de fonctions de mémoire puissantes et peuvent stocker de grandes quantités d'informations. Ces informations comprennent non seulement divers types d'informations, mais également des programmes permettant de traiter ces données.

Le système de mémoire fait référence à un système dans un ordinateur composé de divers périphériques de stockage qui stockent des programmes et des données, des composants de contrôle, ainsi que des périphériques (matériel) et des algorithmes (logiciels) qui gèrent la planification des informations. Le système de stockage offre la possibilité d'écrire et de lire des informations (programmes et données) nécessaires au travail informatique et réalise la fonction de mémoire d'informations de l'ordinateur. La structure hiérarchique du système de stockage peut être divisée en cinq niveaux : groupe de registres, cache cache, mémoire principale, mémoire virtuelle et mémoire externe.

La clé USB a été inventée en Chine et Netac est l'inventeur mondial de la clé USB. En juillet 2002, la « méthode et dispositif de stockage externe Fast Lightning pour les systèmes de traitement de données » de Netac a été officiellement autorisé par l'Office national de la propriété intellectuelle. Ce brevet a comblé le vide de 20 ans dans les brevets d'invention dans le domaine du stockage informatique en Chine ; Le 7 décembre 2019, Netac a reçu le brevet d'invention de base pour les disques flash officiellement autorisé par l'Office national des brevets des États-Unis.

L'utilisation du cache peut augmenter la vitesse de l'ordinateur car le cache réduit le temps d'attente du processeur. Le cache est une mémoire petite mais rapide située entre le processeur et la mémoire principale DRAM. La fonction du cache est d'augmenter le taux d'entrée et de sortie des données du processeur ; le cache a une petite capacité mais une vitesse rapide, tandis que la vitesse de la mémoire est faible mais a une grande capacité. En optimisant l'algorithme de planification, les performances du système seront améliorées. grandement amélioré.

Le cache est appelé mémoire cache. Il s'agit d'une mémoire haute vitesse de petite capacité entre l'unité centrale et la mémoire principale. Elle est généralement composée de SRAM haute vitesse. Ce type de mémoire locale est orienté vers le CPU. pour réduire ou éliminer l'écart entre le processeur et la mémoire. L'impact de la différence de vitesse entre eux sur les performances du système. La capacité du cache est petite mais rapide, la vitesse de la mémoire est faible mais la capacité est grande. En optimisant l'algorithme de planification, les performances du système seront grandement améliorées.