| Liste Articles: [0-A] [A-C] [C-F] [F-J] [J-M] [M-P] [P-S] [S-Z] | Liste Catégories | Une page au hasard | Pages liées | ||||||
La mémoire cache (ou tout type de cache) sert à accélérer la communication entre un élément fournisseur
(disque dur par exemple) plus lent que l'élément demandeur (processeur par exemple). Mémoire cache est la traduction littérale de
l'expression anglaise cache memory, mais la traduction plus académique est antémémoire.
| Sommaire |
On trouve une zone de cache :
Le processus fonctionne ainsi :
Elle est souvent subdivisée en niveaux qui peuvent aller jusqu'a trois. Elle est très rapide, et donc très chère. Il s'agit souvent de Static RAM
En programmation, la taille de la mémoire cache revêt un attrait tout particulier, car pour profiter de l'accélération fournit par cette mémoire très rapide, il faut que les parties de programme, tiennent le plus possible dans cette mémoire cache. Comme elle varie suivant les processeurs, ce rôle d'optimisation est souvent dédié au compilateur. De ce fait, plus la taille de la mémoire cache est grande, plus la taille des programmes accélérés peut être élevée.
C'est aussi un élément souvent utilisé par les constructeurs pour faire varier les performances d'un produit sans changer d'autre matériels. Par exemple, pour les microprocesseurs, on trouve des séries bridé (avec une taille de mémoire cache volontairement réduite), tels que les Duron chez AMD ou Celeron chez Intel, et des séries haut de gamme avec une grande mémoire cache comme les processeurs Optéron chez AMD, ou Pentium 4EE chez Intel.
Un exemple de boucles très courtes qui tient entièrement dans les caches de données et d'instruction, par exemple le calcul suivant (écrit en langage C) :
long i; double s; s=0.; for (i = 1; i<50000000; ++i) s+=1./i;
Il existe d'autres techniques d'accélération de la communication comme la parallélisation.


