Les processeurs informatiques ont beaucoup évolué 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 lorsque les CPU (Central Processing Units) sont en cours de discussion. Cependant, nous n'accordons pas suffisamment d'attention à ces numéros de mémoire cache du processeur, et ils ne sont pas non plus le principal point fort des annonces de processeur.
Alors, quelle est l'importance exacte du cache du processeur et comment fonctionne-t-il ?
En termes simples, un cache mémoire CPU est juste 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 1980, la vitesse des processeurs a commencé à augmenter rapidement. La mémoire système de l'époque (RAM) ne pouvait pas faire face ou correspondre aux vitesses croissantes du processeur, et ainsi 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 Random Access Memory, communément appelé 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 d'effectuer des actions agréables et rapides sur votre ordinateur.
Enfin, le processeur possède des unités de mémoire encore plus rapides en son sein, 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 CPU se situe au sommet de cette hiérarchie, étant le plus rapide. Il est également le plus proche de l'endroit où se produit le traitement central, faisant partie du processeur lui-même.
La mémoire de l'ordinateur est également disponible en différents types.
La mémoire cache est une forme de RAM statique (SRAM), tandis que votre 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, qui rend la SRAM idéale pour la mémoire cache.
Les programmes et les applications de 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 puis envoyées au CPU. De nos jours, les processeurs sont capables d'exécuter un nombre gigantesque d'instructions par seconde. Pour tirer pleinement parti de sa puissance, le processeur a besoin d'accéder à une mémoire ultra-rapide, c'est là que 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 CPU. Selon votre CPU, le contrôleur se trouve sur le CPU, ou le chipset Northbridge se trouve sur votre carte mère.
Le cache mémoire effectue alors le va-et-vient des données au sein du CPU. La hiérarchie de la mémoire existe également dans le cache du processeur.
La mémoire cache du processeur est divisée en trois "niveaux":L1, L2 et L3. La hiérarchie de la mémoire est à nouveau fonction de la vitesse et donc de la taille du cache.
Alors, la taille du cache du processeur fait-elle une différence en termes de performances ?
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 pour effectuer 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 très cher 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 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 des informations sur l'opération que le CPU doit effectuer, tandis que le cache de données contient les données sur lesquelles l'opération doit être effectuée.
Le cache L2 (niveau 2) est plus lent que le cache L1 mais de plus grande taille. Là où 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 contiendront plus d'un cache L2 de 256 Ko, et cette taille est maintenant considérée comme petite. De plus, 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 en retard 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.
Sur le cache L3 (niveau 3). Au début, le cache mémoire L3 se trouvait en fait 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 CPU peut être énorme, avec des CPU grand public haut de gamme dotés de caches L3 jusqu'à 32 Mo. Certains caches CPU L3 du serveur peuvent dépasser cela, avec jusqu'à 64 Mo.
Le cache L3 est l'unité de mémoire cache la plus grande mais aussi la plus lente. Les processeurs modernes incluent le cache L3 sur le processeur lui-même. Mais alors que les caches L1 et L2 existent 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 l'ensemble de la puce 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 L2 et L3 sont respectivement plus grands.
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 anciennes générations, 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 à opposer différents processeurs peut vous aider à prendre la bonne décision d'achat.
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 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 en L2 puis en L3.
Si le CPU ne trouve pas les données dans l'un des caches mémoire, il tente d'y accéder à partir de votre mémoire système (RAM). Lorsque cela se produit, on parle d'échec de cache.
Maintenant, comme nous le savons, le cache est conçu pour accélérer les allers-retours d'informations entre la mémoire principale et le CPU. 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'échec du 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 votre mémoire système est également importante.
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 tous deux les performances de l'ordinateur.