Le Cache L2

Publié le 28/12/1998 par
Imprimer
  • Taille
    Rappelez vous, il y’a quelques années, lors de l’apparition de la SDRAM, certains constructeurs comme Compaq vendaient des machines dénuées de toute mémoire cache, arguant que cette dernière avait perdue toute utilisée. Or l’impact sur les performances étaient tout de même important – plus de 10%. Actuellement, la plupart des machines sont dotées de 512 Ko de mémoire cache, une taille suffisante. Néanmoins il y’a des exceptions, ainsi certaines cartes mères Super 7 sont dotées de 1 voir 2 mégaoctets de mémoire cache de second niveau. Au contraire, les processeurs de type Celeron A300, 333, 366 et 400 de chez Intel sont dotés de seulement 128 Ko de cache, mais celui ci étant très rapide l’impact sur les performances est limité.
  • Mémoire pouvant être cachée
    Toute la mémoire vive dont vous disposez n’est peut pas forcément être " cachée ". En effet le cache utilise un petit espace mémoire, le Tag Ram, afin de connaître l’adresse mémoire d’origine de la donnée stockée dans le cache, pour le Write Back par exemple. La taille du Tag Ram devra être de 8 bits pour cacher jusqu´à 64 Mo de mémoire vive. Avec 11 bits de Tag Ram, on pourra cacher jusqu´à 512 Mo de mémoire vive. Les chipsets Intel 430FX & TX disposait d’un Tag Ram de 8 bits uniquement, d’ou un problème de performance lorsqu’on utilisait plus de 64 Mo de RAM.
  • Vitesse
    La vitesse du cache est exprimée, tout comme celle de la mémoire vive, en Nanosecondes. Cette vitesse est directement liée a la fréquence qu’elle pourra supportée. Ainsi, avec un bus à 100 Mhz, soit 100 millions de cycles par seconde, un cycle aura une durée de 10 nanosecondes. Il est donc primordial que la mémoire cache offre un temps d’accès au moins équivalent a ce dernier afin d’assurer une stabilité sans faille. Les meilleures mémoire cache actuelles ont des temps d’accès de 4.4ns (Pentium II 450).
  • Technique de Mapping
    • Direct Mapped Cache :
      Un cache de 512 Ko est divisée en 16384 lignes de 32 octets. Chacune de ses lignes cachera, si vous disposez de 64 Mo de mémoire vive, 4096 (64 (1024*1024) / 16384) adresses mémoires qui lui sont attribuées de manière rigide.
      Vitesse de recherche : Excellente (correspond au temps de recherche nécessaire pour vérifier si la donnée requise par le CPU ne se trouve pas dans le cache)
      Hit Ratio : Faible (correspond au % de chance pour qu’une donnée requise par le CPU soit dans le cache)
    • Fully Associative Cache :
      Le Fully Associative Mapping rompt avec la rigidité du Direct Mapped Cache. Ainsi, une ligne du cache peut cacher n’importe quelle adresse mémoire.
      Vitesse de recherche : Faible
      Hit Ratio : Excellent
    • N-Way Set Associative Cache :
      Le cache est découpé en parties de " N " lignes. Par exemple, si N correspond a 4, le cache sera divisé en 4096 parties de 4 lignes. Chacune de ses parties cachera 16384 adresses mémoires (avec 64 Mo de RAM) qui lui sont attribuées de manière rigide.
      Vitesse de recherche : Très bonne (diminue si N augmente)
      Hit Ratio : Bon (augmente si N augmente)
  • Méthode d’écriture
    • Write Trough Cache
      Lorsque le système change une donnée dans une adresse actuellement cachée, cette donnée est écrite à la fois dans la mémoire vive et dans la mémoire cache.
    • Write Back Cache
      Cette méthode est bien plus rapide. En effet, la nouvelle donnée ne sera écrite qu’en mémoire cache. Puis, si la ligne de cache contenant cette donnée est réquisitionnée pour cacher une nouvelle adresse mémoire, la donnée sera écrite en mémoire vive à l’adresse mémoire cachée jusqu´à lors.
Sommaire
2 - Caractéristiques II
Vos réactions

Top articles