L'utilisation d'outils de traçage du système comme perf
et ftrace
dans Linux peut vous aider à mieux comprendre les performances et le comportement de votre système. Voici comment vous pouvez utiliser chacun de ces outils:
Utilisation de perf:
perf
est installé sur votre système. Sur la plupart des distributions Linux, il peut être installé à l'aide du gestionnaire de packages, tel que sudo apt-get install linux-perf
sur Ubuntu. Utilisation de base : Pour commencer l'enregistrement des événements, vous pouvez utiliser la commande perf record
. Par exemple, pour enregistrer les cycles CPU, vous utiliseriez:
<code>sudo perf record -e cycles -a sleep 10</code>
Cette commande enregistre les cycles CPU pour tous les processeurs pendant 10 secondes.
Analyse : Après l'enregistrement, vous pouvez analyser les données avec perf report
:
<code>sudo perf report</code>
Cette commande ouvrira une interface interactive où vous pouvez naviguer dans les données.
Cas d'utilisation spécifiques : Perf peut être utilisé pour profiler des applications spécifiques, analyser les performances à l'échelle du système, etc. Par exemple, pour profiler une application spécifique:
<code>sudo perf record ./my_application sudo perf report</code>
Utilisation de ftrace:
L'activation de FTRACE : FTRACE fait généralement partie du noyau Linux. Pour l'activer, vous devez monter le système de fichiers de débogage:
<code>sudo mount -t debugfs nodev /sys/kernel/debug</code>
Configuration du ftrace : vous pouvez configurer quoi tracer en écrivant dans les fichiers dans /sys/kernel/debug/tracing
. Par exemple, pour tracer les appels de fonction:
<code>echo function > /sys/kernel/debug/tracing/current_tracer echo 1 > /sys/kernel/debug/tracing/tracing_on</code>
Affichage de la sortie : la sortie de trace peut être visualisée en temps réel en utilisant:
<code>cat /sys/kernel/debug/tracing/trace</code>
Arrêt de la trace : pour arrêter de tracer, écrivez 0
dans le fichier tracing_on
:
<code>echo 0 > /sys/kernel/debug/tracing/tracing_on</code>
Différences clés:
Fonctionnalité :
Perf
est un outil plus polyvalent qui peut tracer une grande variété d'événements, y compris les événements matériels (par exemple, les cycles du processeur, les ratés de cache) et les événements logiciels (par exemple, défauts de page, commutateurs de contexte).Ftrace
est spécialement conçu pour tracer les fonctions du noyau et les appels système, fournissant un traçage détaillé de niveau du noyau.Interface utilisateur :
Perf
propose une interface interactive ( perf report
) pour l'analyse des données enregistrées, qui peuvent être très conviviales.Ftrace
fournit une sortie brute qui nécessite l'analyse manuelle ou les scripts pour analyser efficacement.Au-dessus :
Perf
a généralement des frais généraux plus élevés que ftrace
en raison de ses capacités plus larges.Ftrace
est plus léger et peut être utilisé avec un impact minimal du système, ce qui le rend idéal pour les scénarios où des frais généraux faibles sont cruciaux.Quand utiliser chaque outil:
Utilisez perf :
Utilisez Ftrace :
Analyse de la sortie perf:
perf report
: Comme mentionné, perf report
fournit un moyen interactif de visualiser les données enregistrées. Vous pouvez naviguer dans le graphique d'appel pour identifier les fonctions qui consomment le plus de temps ou de ressources.perf
pour analyser les événements matériels comme les cycles CPU, les manquements de cache et les erreurs de prédiction des branches. Des comptes élevés dans ces domaines peuvent suggérer des opportunités d'optimisation.Perf
utilise un échantillonnage statistique pour collecter des données, ce qui peut aider à identifier les points chauds de votre code ou système.Analyse de la sortie FTRACE:
trace-cmd
ou écrivez des scripts pour filtrer et analyser les données.Pièges communs:
ftrace
.Meilleures pratiques:
perf
et ftrace
vous permettent de filtrer les événements. Utilisez cette fonctionnalité pour vous concentrer sur les domaines d'intérêt et réduire la surcharge de données.perf
et ftrace
pour obtenir une vue plus complète du comportement du système.trace-cmd
pour ftrace
ou SCRIPTS CUSTOSS pour perf
peuvent rationaliser votre flux de travail. En suivant ces directives, vous pouvez utiliser efficacement perf
et ftrace
pour diagnostiquer et optimiser les performances de votre système Linux.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!