NOM¶
readprofile - Lire les informations de profilage du noyau
SYNOPSIS¶
readprofile [
options]
VERSION¶
Cette page de manuel documente la version 2.0 du programme.
DESCRIPTION¶
La commande
readprofile utilise les informations disponibles dans
/proc/profile pour afficher des données au format ASCII sur la
sortie standard. La sortie est organisée en trois colonnes : la
première affiche le nombre de tics d'horloge, la deuxième
contient le nom de la fonction C du noyau au sein de laquelle ces tics
ont eu lieu, et la troisième représente la
« charge » normalisée de la
procédure, calculée comme le quotient entre le nombre de tics et
la durée de la procédure. La sortie est complétée
par des blancs pour améliorer la lisibilité.
OPTIONS¶
- -a, --all
- Afficher tous les symboles de la carte. Par défaut, les
procédures avec des tics signalés ne sont pas
affichées.
- -b, --histbin
- Afficher les compteurs de chaque intervalle de l'histogramme.
- -i, --info
- Afficher des informations. Seule l'étape de profilage
utilisée par le noyau est affichée. L'étape de
profilage consiste en la résolution du tampon de profilage et est
choisie lors de la configuration du noyau (avec « make
config »), ou avec la ligne de commande du noyau. Si
l'option -t (abrégé) est utilisée avec
l'option -i, seul le nombre décimal est affiché.
- -m, --mapfile carte
- Indiquer une carte, qui par défaut sera
/usr/src/linux/System.map. La carte doit être
précisée sur la ligne de commande si le noyau actuel n'est
pas le dernier à avoir été compilé, ou si le
fichier System.map se trouve ailleurs. Si le nom de la carte se termine
par « .gz », celle-ci est
décompressée à la volée.
- -M, --multiplier multiplicateur
- Sur certaines architectures, il est possible de modifier la
fréquence à laquelle le noyau délivre les
interruptions de profilage pour chaque processeur. Cette option permet de
définir la fréquence en tant que multiplicateur de la
fréquence de l'horloge du système. L'unité est le
hertz. C'est géré sur les systèmes i386-SMP
(noyaux 2.2 et 2.4) ainsi que sur les sparc-SMP et sparc64-SMP
(noyau 2.4). Cette option réinitialise également le
tampon de profilage et nécessite les privilèges du
superutilisateur.
- -p, --profile fichier_profil
- Indiquer un tampon de profil différent (par défaut
/proc/profile). Utiliser un profil différent est utile pour
« geler » le profilage du noyau à un
moment, afin de le lire plus tard. Le fichier /proc/profile peut
être copié en utilisant cat ou cp. Les tampons
de profils compressés ne sont plus gérés, comme cela
était le cas avec readprofile-1.1, car le programme doit
connaître à l'avance la taille du tampon.
- -r, --reset
- Réinitialiser le tampon de profilage. Cette option n'est utilisable
que par le superutilisateur, car /proc/profile est lisible par tout
le monde, mais n'est ouvert en écriture qu'au superutilisateur.
Cependant, vous pouvez mettre le bit setuid de readprofile à
0, pour réinitialiser le tampon sans obtenir de
privilège.
- -s, --counters
- Afficher les compteurs individuels dans les fonctions.
- -v, --verbose
- Utiliser une sortie en mode verbeux. Celle-ci est alors organisée
en quatre colonnes et complétée avec des blancs. La
première colonne est l'adresse RAM d'une fonction du noyau, la
seconde contient le nom de cette fonction, la troisième affiche le
nombre de tics d'horloge et la dernière la charge
normalisée.
- -V, --version
- Afficher les informations sur la version et quitter.
- -h, --help
- Afficher un texte d'aide puis quitter.
EXEMPLES¶
Parcourir le tampon de profilage selon le nombre de tics d'horloge :
readprofile | sort -nr | less
Afficher les 20 procédures ayant les plus grandes charges :
readprofile | sort -nr +2 | head -20
N'afficher que le profil du système de fichiers :
readprofile | grep _ext2
Afficher toutes les informations du noyau, avec les adresses RAM :
readprofile -av | less
Parcourir un tampon de profil « gelé » pour
un noyau différent de l'actuel :
readprofile -p ~/profile.freeze -m /zImage.map.gz
Demander un profilage à 2 kHz par processeur, et
réinitialiser le tampon de profilage :
sudo readprofile -M 20
BOGUES¶
readprofile ne fonctionne qu'avec les noyaux 1.3.x et
supérieurs, car
/proc/profile a changé entre les
versions 1.2 et 1.3.
Ce programme ne fonctionne qu'avec les noyaux ELF. Le changement pour les noyaux
a.out est trivial et laissé comme exercice à l'utilisateur de
ces noyaux.
Pour activer le profilage, le noyau doit être redémarré,
car aucun module de profilage n'est disponible, et la construction d'un tel
module n'est pas triviale. Pour activer le profilage, vous pouvez ajouter
« profile=2 » (ou un autre nombre) à la
ligne de commande du noyau. Le nombre que vous indiquez sera utilisé
comme exposant de 2 pour définir l'étape de profilage.
Le profilage est désactivé lorsque les interruptions sont
interdites. Cela signifie que beaucoup de tics de profilage ont lieu lorsque
les interruptions sont réactivées. Prenez garde aux informations
erronées.
FICHIERS¶
/proc/profile Instantané binaire du tampon de profilage.
/usr/src/linux/System.map Table de symboles pour le noyau.
/usr/src/linux/* Le programme en cours de profilage :-).
DISPONIBILITɶ
La commande
readprofile fait partie du paquet util-linux, elle est
disponible sur
l’archive
du noyau Linux
TRADUCTION¶
Cette page de manuel a été traduite et est maintenue par Thomas
Huriaux <thomas.huriaux@gmail.com> et les membres de la liste
<debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler
toute erreur de traduction par un rapport de bogue sur le paquet
manpages-fr-extra.