La mémoire cache est un composant majeur des processeurs et sa mauvaise utilisation peut entraîner une baisse importante des performances d’un programme. Nous allons voir dans cet article quelques astuces pour mesurer les performances liées aux caches et éviter certains écueils.
Avec l’augmentation de la puissance des processeurs, l’accès aux données stockées en mémoire devient de plus en plus un goulot d’étranglement. Plusieurs techniques sont mises en œuvre par les fabricants de processeurs pour accélérer cet accès et éviter de perdre des cycles CPU à attendre les données. La première d’entre elles est l’ajout de mémoires caches rapides. Le premier CPU Intel disposant d’une mémoire cache intégrée au processeur était le 486 (1989). Parmi les autres techniques, on peut citer l’exécution dans le désordre (« out-of-order execution »), introduite sur les CPU Intel avec le Pentium Pro (1995), qui permet de masquer en partie la latence mémoire, et les systèmes de prélecture (« cache prefetching ») qui ont été introduits chez Intel sur les Pentium 3/4 (2000/2001) et qui permettent d’anticiper les futurs accès à la mémoire.
1. Architecture des caches d’un CPU
Sur un processeur moderne, la mémoire cache est...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première