2017-08-04 8 views
0

Pourriez-vous m'indiquer comment obtenir la valeur des compteurs d'événements pour chaque échantillon lors de l'utilisation de perf record?Profilage temporel avec enregistrement perf

Par exemple:

perf record -F 100 -e instructions ./program

Avec rapport de perf, je ne vois en tête. Mais je veux savoir s'il y a des façons de voir la valeur du compteur à chaque échantillon ...

+0

Vérifiez également 'perf stat' avec le mode' -I' d'échantillonnage périodique-périodique; pour l'échantillonnage basé sur le temps avec l'utilisation de l'enregistrement '-e événement cpu-clock' et' -c' pour le comptage exact des événements (-F fera l'autoréglage entre les interruptions d'échantillonnage pour garder la fréquence d'échantillonnage autour de votre demande). Le script Perf ne fait qu'analyser ce qui est enregistré dans perf.data, il montre juste des échantillons d'événements et l'horodatage de chaque échantillon. – osgx

+0

@osgx Merci. J'ai essayé d'utiliser perf stat avec la commande -I mais parce que le temps d'exécution des charges de travail est si court en moins de 10ms et le temps minimum que perf stat -I permet est de 10 ms cette commande ne m'a pas été utile. Donc, j'ai utilisé le script perf et filtré les échantillons de charges de travail de mon intérêt avec leur horodatage un nombre d'événements ... Merci pour votre commentaire ... – user3527764

Répondre

1

Je vais répondre à ma propre question au cas où quelqu'un d'autre serait confronté au même problème.

Pour afficher l'heure à laquelle l'échantillon est prélevé et la valeur du compteur à ce moment-là, vous pouvez utiliser perf script après avoir exécuté perf record.