Cache L1 contre L2
La mémoire cache est une mémoire spéciale utilisée par le CPU (Central Processing Unit) d'un ordinateur dans le but de diminuer le temps moyen nécessaire pour accéder à la mémoire. La mémoire cache est une mémoire relativement plus petite et également plus rapide, qui stocke les données les plus fréquemment consultées de la mémoire principale. Lorsqu'il y a une demande de lecture de mémoire, la mémoire cache est vérifiée pour voir si ces données existent dans la mémoire cache. Si ces données se trouvent dans la mémoire cache, il n'est pas nécessaire d'accéder à la mémoire principale (ce qui prend plus de temps pour y accéder), ce qui réduit le temps d'accès moyen à la mémoire. En règle générale, il existe des caches distincts pour les données et les instructions. Le cache de données est généralement configuré dans une hiérarchie de niveaux de cache (parfois appelés caches à plusieurs niveaux). L1 (niveau 1) et L2 (niveau 2) sont les plus hauts caches dans cette hiérarchie de caches. L1 est le cache le plus proche de la mémoire principale et est le cache qui est vérifié en premier. Le cache L2 est le suivant et est le deuxième le plus proche de la mémoire principale. L1 et L2 varient en termes de vitesse d'accès, d'emplacement, de taille et de coût.
Cache L1
Le cache L1 (également connu sous le nom de cache principal ou cache de niveau 1) est le cache le plus haut dans la hiérarchie des niveaux de cache d'un processeur. C'est le cache le plus rapide de la hiérarchie. Il a une taille plus petite et un délai plus petit (état d'attente nul) car il est généralement intégré à la puce. SRAM (Static Random Access Memory) est utilisé pour l'implémentation de L1.
Cache L2
Le cache L2 (également appelé cache secondaire ou cache de niveau 2) est le cache qui se trouve à côté de L1 dans la hiérarchie des caches. L2 est généralement accessible uniquement si les données recherchées ne se trouvent pas dans L1. L2 est généralement utilisé pour combler l'écart entre les performances du processeur et la mémoire. L2 est généralement implémenté à l'aide d'une DRAM (Dynamic Random Access Memory). La plupart du temps, L2 est soudé sur la carte mère très près de la puce (mais pas sur la puce elle-même), mais certains processeurs comme le Pentium Pro ont dévié de cette norme.
Quelle est la différence entre le cache L1 et L2 ?
Bien que L1 et L2 soient des mémoires cache, elles ont leurs principales différences. L1 et L2 sont les premier et deuxième caches dans la hiérarchie des niveaux de cache. L1 a une capacité de mémoire inférieure à L2. De plus, L1 est accessible plus rapidement que L2. L2 est accessible uniquement si les données demandées ne se trouvent pas dans L1. L1 est généralement intégré à la puce, tandis que L2 est soudé sur la carte mère très près de la puce. Par conséquent, L1 a un très petit retard par rapport à L2. Étant donné que L1 est implémenté à l'aide de SRAM et que L2 est implémenté à l'aide de DRAM, L1 n'a pas besoin d'être actualisé, tandis que L2 doit être actualisé. Si les caches sont strictement inclusifs, toutes les données de L1 peuvent également être trouvées dans L2. Cependant, si les caches sont exclusifs, les mêmes données ne seront pas disponibles à la fois dans L1 et L2.