Skip to main content

Qu'est-ce que la cohérence du cache?

La cohérence du cache est le problème naturel qui se développe lorsqu'un ensemble de données de systèmes est accessible et modifié par plusieurs agents.Le principal domaine de l'architecture informatique où cela devient un problème est dans les ordinateurs multiprocesseurs.Chaque processeur d'un ordinateur multiprocesseur a son propre cache qui charge et stocke les informations de la mémoire d'accès aléatoire (RAM).Lorsque deux processeurs accèdent à la même zone de mémoire, la cohérence du cache serait perdue si certaines précautions n'étaient pas prises.

Sans cohérence du cache, un système multiprocesseur ne serait pas en mesure de fonctionner.Plusieurs méthodes ont été développées afin de résoudre ce problème et d'éviter les problèmes potentiels.La cohérence basée sur les répertoires, l'apogée et le snarfing sont trois méthodes qui sont utilisées pour empêcher la perte de cohérence du cache.

La cohérence basée sur le répertoire fonctionne comme un filtre afin d'assurer la cohérence.Les données sont placées dans une partie de la mémoire accessible à tous les processeurs.Lorsque les informations stockées dans ce domaine de mémoire sont modifiées, le système mettra à jour les caches ou les invalidera.

L'ensemble nécessite le processeur pour surveiller tous les accès aux emplacements de mémoire qui ont été mis en cache.Cela permet au processeur de savoir quand une opération d'écriture s'est produite.En sachant quand une opération d'écriture se produit, le processeur peut mettre à jour son cache.

Snarfing est assez similaire à l'apitement.Snarfing implique non seulement de surveiller les accès aux emplacements de mémoire qui ont été mis en cache, mais également de surveiller les informations réelles stockées dans la mémoire.Lorsqu'une écriture de mémoire se produit, le cache peut être mis à jour avec les nouvelles informations. Les systèmes de cohérence basés sur les répertoires ont une latence relativement élevée, ce qui entraîne un traitement plus lent.Les exigences de bande passante inférieures permettent aux systèmes de cohérence basés sur les répertoires d'être pratiques dans des applications à grande échelle de la cohérence du cache.Plus il y a de processeurs qu'un système utilise, plus il peut avoir d'avantages en utilisant un système de cohérence basé sur le répertoire. L'ensemble est une méthode beaucoup plus rapide.Cette méthode nécessite plus de bande passante que l'approche basée sur le répertoire.Cette méthode peut être utilisée efficacement dans des systèmes qui ont relativement peu de processeurs. Snarfing n'est généralement pas utilisé comme méthode de maintien de la cohérence du cache.Cela est principalement dû au fait que Sarfing nécessite plus de ressources pour être utilisés par rapport aux méthodes d'espionnage et basées sur les répertoires.Pour qu'un système entassant fonctionne, il doit garder une trace à la fois des adresses mémoire et des données stockées dans ces domaines de mémoire.La quantité de bande passante et de traitement qui est prise par cette méthode le rend indésirable pour la plupart des applications de maintien de la cohérence du cache.