Hiérarchie mémoire
Lors de l’insertion d’instructions de préchargement logiciel, quelle description de la distance de préchargement (jusqu’où en avance lire les données) est correcte ?
- APlus la distance est courte, mieux c’est ; l’optimum est d’insérer le préchargement juste avant la lecture de l’élément suivant
- BPlus la distance est longue, mieux c’est ; l’optimum est de lire en bloc au début toutes les données de la boucle
- CNi trop courte ni trop longue ; elle se détermine à partir de la durée d’un défaut et de la durée d’une itération
Afficher la réponse et l'explication
Réponse : C. Ni trop courte ni trop longue ; elle se détermine à partir de la durée d’un défaut et de la durée d’une itération
Un préchargement n’a de sens que si la lecture en mémoire est terminée au moment où la donnée est nécessaire. Une distance trop courte ne permet pas à la donnée d’arriver à temps ; une distance trop longue entraîne l’éviction de la donnée avant son utilisation ou la pollution du cache. En règle générale, on précharge un nombre d’itérations en avance égal à la pénalité de défaut divisée par la durée d’une itération. Un préchargement juste avant l’accès ne masque pas l’attente, et charger toutes les données en bloc dépasse la capacité du cache.