Analyse des performances

En mesurant le temps par élément d'un traitement qui lit un tableau de façon répétée, tout en augmentant progressivement la taille du tableau, le temps augmente par paliers à certaines tailles. Pourquoi ?

  1. AParce que la fréquence du CPU baisse toujours à mesure que le tableau grandit
  2. BParce que chaque fois que le tableau dépasse successivement la capacité des caches L1, L2 et L3, les données sont lues depuis une mémoire plus lente
  3. CParce que le résultat des additions change selon la taille du tableau
Afficher la réponse et l'explication

Réponse : B. Parce que chaque fois que le tableau dépasse successivement la capacité des caches L1, L2 et L3, les données sont lues depuis une mémoire plus lente

Tant que le tableau est petit, il tient dans le cache L1 et se lit rapidement ; au-delà de la capacité de L1, il est lu depuis L2, puis, au-delà de L2 et L3, depuis la mémoire principale, et le temps par élément augmente par paliers à chaque fois. Cette mesure permet d'estimer approximativement la capacité et la vitesse de chaque cache. Elle explique aussi pourquoi faire tenir dans le cache les données réutilisées par le programme (ensemble de travail, working set) influe fortement sur les performances.

S'entraîner sur ce thème Retour au thème

Autres questions sur Analyse des performances

  1. Quelle est la formule de base correcte du temps d'exécution d'un programme sur un CPU ?
  2. Un programme de 1 milliard d'instructions s'exécute sur un CPU dont le CPI moyen vaut 2 et la fréquence d'horloge 2 GHz. Quel est le temps d'exécution ?
  3. Une modification de conception du CPU multiplie la fréquence d'horloge par 1,5, mais aussi le CPI par 1,2 (nombre d'instructions inchangé). Par combien la vitesse d'exécution est-elle multipliée ?
  4. Une nouvelle optimisation du compilateur réduit de 20 % le nombre d'instructions exécutées, mais augmente le CPI moyen de 10 % (fréquence inchangée). Quel est l'effet correct de cette optimisation ?
  5. Un programme comporte 50 % d'opérations entières (CPI 1), 30 % de chargements et rangements (CPI 2) et 20 % de branchements (CPI 5). Quel est le CPI moyen ?

Comparatifs sur ce thème