Analyse des performances

Dans l'analyse descendante (Top-down Microarchitecture Analysis) fondée sur les compteurs de performance, quelle grande classification de l'utilisation des slots de traitement d'instructions du CPU est correcte ?

  1. ATrois catégories : rapide, lent, normal
  2. BQuatre catégories : blocage en front-end, blocage en back-end, spéculation perdue, achèvement correct des instructions (retirement)
  3. CQuatre catégories : disque, réseau, écran, clavier
Afficher la réponse et l'explication

Réponse : B. Quatre catégories : blocage en front-end, blocage en back-end, spéculation perdue, achèvement correct des instructions (retirement)

L'analyse descendante détermine, pour chaque slot de traitement d'instructions à chaque cycle, s'il est resté vide parce que l'étage amont qui extrait et décode les instructions (front-end) n'a pas suivi, s'il a été bloqué dans l'étage aval (back-end) par l'attente des unités de calcul ou de la mémoire, s'il a servi à des instructions abandonnées après une erreur de prédiction, ou s'il a servi à des instructions correctement achevées. En affinant de la catégorie la plus large vers des causes plus fines, on identifie efficacement le goulot d'étranglement.

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

Autres questions sur Analyse des performances

  1. Un programme est lent alors que l'utilisation du CPU n'est que d'environ 20 %. Quelle est la cause la plus probable ?
  2. Pour déterminer si un programme est limité par le calcul ou par la mémoire, on mesure le temps d'exécution en faisant varier la fréquence du CPU. Quel résultat obtient-on en général si le programme est limité par la mémoire ?
  3. Dans le modèle Roofline, lorsqu'un traitement se situe dans la région limitée par la bande passante mémoire, quelle orientation est correcte pour améliorer les performances ?
  4. Que mesure principalement le benchmark STREAM ?
  5. Quelle est la méthode la plus appropriée pour étudier la scalabilité d'un programme parallèle ?

Comparatifs sur ce thème