Etude du prechargement de donnees sur les caches de second niveau dans les processeurs superscalaires
Auteur / Autrice : | VINCENT BRANGER |
Direction : | Daniel Etiemble |
Type : | Thèse de doctorat |
Discipline(s) : | Sciences appliquées |
Date : | Soutenance en 1997 |
Etablissement(s) : | Paris 11 |
Résumé
Les techniques pour reduire ou tolerer les latences memoire sont essentielles pour atteindre des performances elevees dans les processeurs. Dans cette these, les techniques de prechargement materiel de donnees sont plus precisement etudiees dans le cadre des processeurs superscalaires avec un bus dedie pour le cache de second niveau. Avec un simulateur tres precis (implementant des techniques d'execution dans le desordre, un modele de bus et de memoire. . . ), nous avons etudie les performances obtenues avec un prechargement de donnees (sequentiel, avec calcul de pas. . . ) sur le premier niveau de cache. Des simulations montrent que ce prechargement affecte les performances des processeurs superscalaires en prechargeant des donnees inutiles dans le cache (pollution), en creant des conflits d'acces sur le premier niveau de cache, en augmentant considerablement le trafic memoire et n'anticipant pas suffisamment les besoins du processeur. Le prechargement sequentiel sur le second niveau de cache corrige ces principaux defauts. Nos travaux montrent qu'une forte localite spatiale est presente a la sortie du premier niveau de cache et que les performances potentielles d'un prechargement sur le second niveau de cache sont elevees. Nos simulations montrent que le prechargement materiel sequentiel sur le second niveau de cache donne de meilleures performances effectives que sur de performances sur certains programmes liees a l'encombrement du bus. Nous proposons alors un mecanisme de prechargement adaptatif, en fonction de l'encombrement du bus et des performances reelles, permettant des gains significatifs pour les programmes flottants sans aucune degradation de performances des programmes entiers.