Comment fonctionne le cache du processeur? Que sont le cache L1, L2 et L3?

Les processeurs informatiques ont beaucoup progressé ces dernières années. Les transistors deviennent plus petits chaque année et les progrès atteignent un point où la loi de Moore devient redondante.

En ce qui concerne les processeurs, ce ne sont pas seulement les transistors et les fréquences qui comptent, mais aussi le cache.

Vous avez peut-être entendu parler de la mémoire cache lors des discussions sur les CPU (unités centrales de traitement). Cependant, nous ne prêtons pas suffisamment attention à ces numéros de mémoire cache CPU, et ils ne sont pas non plus le principal point fort des publicités de CPU.

Alors, quelle est l'importance du cache du processeur et comment ça marche?

Qu'est-ce que la mémoire cache du processeur?

En termes simples, un cache de mémoire CPU n'est qu'un type de mémoire très rapide. Au début de l'informatique, la vitesse du processeur et la vitesse de la mémoire étaient faibles. Cependant, au cours des années 80, la vitesse des processeurs a commencé à augmenter – rapidement. La mémoire système de l'époque (RAM) ne pouvait pas faire face ou égaler les vitesses croissantes du processeur, et donc un nouveau type de mémoire ultra-rapide est né: la mémoire cache du processeur.

Désormais, votre ordinateur contient plusieurs types de mémoire.

Il existe un stockage principal, comme un disque dur ou un SSD, qui stocke la majeure partie des données: le système d'exploitation et les programmes.

Ensuite, nous avons la mémoire à accès aléatoire, communément appelée RAM . C'est beaucoup plus rapide que le stockage principal, mais ce n'est qu'un support de stockage à court terme. Votre ordinateur et les programmes qu'il contient utilisent la RAM pour stocker les données fréquemment consultées, ce qui permet de garder les actions sur votre ordinateur agréables et rapides.

Enfin, le processeur possède des unités de mémoire encore plus rapides en lui-même, appelées cache mémoire du processeur.

La mémoire de l'ordinateur a une hiérarchie basée sur sa vitesse de fonctionnement. Le cache du processeur se trouve au sommet de cette hiérarchie, étant le plus rapide. Il est également le plus proche de l'endroit où le traitement central a lieu, faisant partie du processeur lui-même.

La mémoire de l'ordinateur est également de différents types.

La mémoire cache est une forme de RAM statique (SRAM), tandis que la RAM système habituelle est connue sous le nom de RAM dynamique (DRAM). La RAM statique peut contenir des données sans avoir besoin d'être constamment actualisée, contrairement à la DRAM, ce qui rend la SRAM idéale pour la mémoire cache.

Comment fonctionne le cache du processeur?

Les programmes et applications sur votre ordinateur sont conçus comme un ensemble d'instructions que le processeur interprète et exécute. Lorsque vous exécutez un programme, les instructions passent du stockage principal (votre disque dur) au processeur. C'est là que la hiérarchie de la mémoire entre en jeu.

Les données sont d'abord chargées dans la RAM et sont ensuite envoyées au CPU. Les processeurs de nos jours sont capables d'exécuter un nombre gigantesque d'instructions par seconde. Pour utiliser pleinement sa puissance, le processeur a besoin d'accéder à une mémoire ultra-rapide, où le cache du processeur entre en jeu.

Le contrôleur de mémoire prend les données de la RAM et les envoie au cache du processeur. Selon votre CPU, le contrôleur se trouve sur le CPU, ou le chipset Northbridge trouvé sur votre carte mère.

Le cache mémoire effectue alors les va-et-vient des données dans la CPU. La hiérarchie de la mémoire existe également dans le cache du processeur.

Connexes: Qu'est-ce qu'un processeur et que fait-il?

Les niveaux de mémoire cache du processeur: L1, L2 et L3

La mémoire cache du processeur est divisée en trois "niveaux": L1, L2 et L3. La hiérarchie mémoire est à nouveau en fonction de la vitesse et donc de la taille du cache.

Alors, la taille du cache du processeur fait-elle une différence sur les performances?

Cache L1

Le cache L1 (niveau 1) est la mémoire la plus rapide présente dans un système informatique. En termes de priorité d'accès, le cache L1 contient les données dont le CPU est le plus susceptible d'avoir besoin lors de l'exécution d'une certaine tâche.

La taille du cache L1 dépend du processeur. Certains processeurs grand public haut de gamme disposent désormais d'un cache L1 de 1 Mo, comme l'Intel i9-9980XE, mais ceux-ci coûtent énormément d'argent et sont encore rares. Certains chipsets de serveur, comme la gamme Xeon d'Intel, disposent également d'un cache mémoire L1 de 1 à 2 Mo.

Il n'y a pas de taille de cache L1 "standard", vous devez donc vérifier les spécifications du processeur pour déterminer la taille exacte du cache de mémoire L1 avant d'acheter.

Le cache L1 est généralement divisé en deux sections: le cache d'instructions et le cache de données. Le cache d'instructions traite les informations sur l'opération que l'UC doit effectuer, tandis que le cache de données contient les données sur lesquelles l'opération doit être effectuée.

Cache L2

Le cache L2 (niveau 2) est plus lent que le cache L1 mais de plus grande taille. Lorsqu'un cache L1 peut mesurer en kilo-octets, les caches de mémoire L2 modernes mesurent en mégaoctets. Par exemple, le très apprécié Ryzen 5 5600X d'AMD dispose d'un cache L1 de 384 Ko et d'un cache L2 de 3 Mo (plus un cache L3 de 32 Mo).

La taille du cache L2 varie en fonction du processeur, mais sa taille est généralement comprise entre 256 Ko et 8 Mo. La plupart des processeurs modernes contiennent plus d'un cache L2 de 256 Ko, et cette taille est désormais considérée comme petite. En outre, certains des processeurs modernes les plus puissants ont un cache mémoire L2 plus grand, dépassant 8 Mo.

En ce qui concerne la vitesse, le cache L2 est à la traîne par rapport au cache L1 mais reste beaucoup plus rapide que la RAM de votre système. Le cache mémoire L1 est généralement 100 fois plus rapide que votre RAM, tandis que le cache L2 est environ 25 fois plus rapide.

Cache L3

Dans le cache L3 (niveau 3). Au début, le cache mémoire L3 était en fait trouvé sur la carte mère. C'était il y a très longtemps, à l'époque où la plupart des processeurs n'étaient que des processeurs monocœur. Désormais, le cache L3 de votre processeur peut être énorme, avec des processeurs grand public haut de gamme dotés de caches L3 allant jusqu'à 32 Mo. Certains caches de CPU L3 de serveur peuvent dépasser cela, avec jusqu'à 64 Mo.

Le cache L3 est l'unité de mémoire cache la plus volumineuse mais aussi la plus lente. Les processeurs modernes incluent le cache L3 sur le processeur lui-même. Mais alors que le cache L1 et L2 existe pour chaque cœur de la puce elle-même, le cache L3 s'apparente davantage à un pool de mémoire général que la puce entière peut utiliser.

L'image suivante montre les niveaux de mémoire cache du processeur pour un processeur Intel Core i5-3570K:

Notez comment le cache L1 est divisé en deux, tandis que les L2 et L3 sont respectivement plus gros.

De combien de mémoire cache CPU ai-je besoin?

C'est une bonne question. Plus c'est mieux, comme on peut s'y attendre. Les derniers processeurs incluront naturellement plus de mémoire cache CPU que les générations précédentes, avec une mémoire cache potentiellement plus rapide également. Une chose que vous pouvez faire est d'apprendre à comparer efficacement les processeurs . Il existe de nombreuses informations, et apprendre à comparer et à contraster différents processeurs peut vous aider à prendre la bonne décision d'achat.

Comment les données se déplacent-elles entre les caches mémoire du processeur?

La grande question: comment fonctionne la mémoire cache du processeur?

Dans ses termes les plus élémentaires, les données circulent de la RAM vers le cache L3, puis le L2 et enfin le L1. Lorsque le processeur recherche des données pour effectuer une opération, il essaie d'abord de les trouver dans le cache L1. Si le processeur le trouve, la condition est appelée un accès au cache. Il procède ensuite à sa recherche dans L2 puis L3.

Si le processeur ne trouve les données dans aucun des caches de mémoire, il tente d'y accéder à partir de votre mémoire système (RAM). Lorsque cela se produit, on parle de manque de cache.

Maintenant, comme nous le savons, le cache est conçu pour accélérer le va-et-vient des informations entre la mémoire principale et le processeur. Le temps nécessaire pour accéder aux données de la mémoire est appelé «latence».

La mémoire cache L1 a la latence la plus faible, étant la plus rapide et la plus proche du cœur, et L3 a la plus élevée. La latence du cache mémoire augmente en cas d'absence de cache car le processeur doit récupérer les données de la mémoire système.

La latence continue de diminuer à mesure que les ordinateurs deviennent plus rapides et plus efficaces. La RAM DDR4 à faible latence et les SSD ultra-rapides réduisent la latence, rendant l'ensemble de votre système plus rapide que jamais. En cela, la vitesse de la mémoire de votre système est également importante.

L'avenir de la mémoire cache du processeur

La conception de la mémoire cache évolue constamment, d'autant plus que la mémoire devient moins chère, plus rapide et plus dense. Par exemple, l'une des innovations les plus récentes d'AMD est la mémoire Smart Access et le cache Infinity , qui augmentent les performances de l'ordinateur.