Comment calculer l'utilisation CPU d'un processus de & tous ses processus enfants dans Linux?
Je veux savoir l'utilisation CPU d'un processus et que tous les processus enfants, pour une période de temps fixe, dans Linux.
Pour être plus précis, voici mon cas d'utilisation:
Il y a un processus qui attend une demande de l'utilisateur pour exécuter les programmes. Pour exécuter les programmes, ce processus appelle les processus enfants (limite maximale de 5 à la fois) & chacun de ces processus enfant exécute 1 de ces soumis programmes (disons soumis par les utilisateurs, 15 programmes à la fois). Donc, si l'utilisateur soumet 15 programmes, puis 3 lots de 5 enfants chaque processus s'exécute. Les processus enfants sont tués dès qu'ils ont terminé leur exécution du programme.
Je voulez savoir sur le % d'Utilisation du PROCESSEUR par le processus parent et son enfant au cours de l'exécution de ces 15 programmes.
Est-il une façon simple de le faire à l'aide de haut ou une autre commande? (Ou n'importe quel outil je doit joindre au processus parent.)
OriginalL'auteur user1522820 | 2012-10-13
Vous devez vous connecter pour publier un commentaire.
Vous pouvez trouver cette information dans
/proc/PID/stat
où PID est votre processus parent de l'ID de processus. En supposant que le processus parent attend de ses enfants, puis le total de l'utilisation du PROCESSEUR peut être calculée à partir de utime, stime, cutime et cstime:Voir proc(5) page de manuel pour plus de détails.
OriginalL'auteur Adam Zalcman
Et bien sûr, vous pouvez le faire dans le hardcore-chemin à l'aide de ce bon vieux C
find_cpu.c
Compiler:
Profitez-en!
OriginalL'auteur Sergey Gerasimov
Pourrait ne pas être exactement la commande. Mais vous pouvez faire quelque chose comme ci-dessous pour obtenir de l'utilisation de l'uc de divers processus et l'ajouter.
#ps -C sendmail,firefox -o pcpu= | awk '{s+=$1} END {print s}'
/proc/[pid]/stat des informations d'État sur le processus. Il est utilisé par les ps et mis en forme lisible par l'homme.
Un autre moyen est d'utiliser les cgroups et l'utilisation cpuacct.
http://www.kernel.org/doc/Documentation/cgroups/cpuacct.txt
https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/sec-cpuacct.html
OriginalL'auteur Ranjith Ruban
Voici une ligne pour calculer le total des CPU pour tous les processus. Vous pouvez l'ajuster en passant de la colonne de filtre en haut de sortie:
OriginalL'auteur Sergei Rodionov