Analyse des performances

Quelle lecture d'un flame graph, représentation des résultats de profilage, est correcte ?

  1. ALa couleur de chaque fonction indique son importance
  2. BLes piles d'appels sont empilées verticalement, et la largeur horizontale de chaque fonction représente la proportion du temps consommé par elle (et ses appelées)
  3. CL'axe horizontal représente la date d'exécution du programme
Afficher la réponse et l'explication

Réponse : B. Les piles d'appels sont empilées verticalement, et la largeur horizontale de chaque fonction représente la proportion du temps consommé par elle (et ses appelées)

Un flame graph empile les fonctions appelantes en bas et les appelées au-dessus, avec une largeur proportionnelle au nombre d'échantillons enregistrés. Plus une boîte est large, plus elle consomme de temps. Une boîte large sans rien au-dessus indique que la fonction consomme le temps elle-même ; si d'autres fonctions sont empilées au-dessus, le temps est consommé dans les appelées. Les chemins d'appel les plus lourds se repèrent d'un coup d'œil.

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

Autres questions sur Analyse des performances

  1. Quel exemple de grandeurs comptées par les compteurs de performance intégrés au CPU (PMU) est correct ?
  2. Les compteurs de performance indiquent qu'un programme a un IPC (instructions par cycle) très faible de 0,3 et beaucoup de défauts dans le cache de dernier niveau. Quelle association entre situation probable et remède est la plus plausible ?
  3. Les compteurs de performance révèlent un très grand nombre d'erreurs de prédiction de branchement. Quelle méthode d'amélioration convient ?
  4. 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 ?
  5. Un programme est lent alors que l'utilisation du CPU n'est que d'environ 20 %. Quelle est la cause la plus probable ?

Comparatifs sur ce thème