Page 1 sur 1
[Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 16:33
par Ypnose
Bonjour,
Je me permets de poster ici, car j'ai besoin de vous! Effectivement, je voudrais "enregistrer" (dans un fichier par exemple) la consommation de CPU avec htop ou autre. Je veux faire ça, car lorsque je joue à OpenArena ou des jeux, je ne peux pas afficher le terminal htop (sauf si je joue en fenêtré avec une résolution basse). Il serait pratique de pouvoir enregistrer pendant deux minutes par exemple avec un relevé toutes les deux secondes.
Peut-être qu'il existe déjà un logiciel qui fait ça.
Merci bien!
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 17:01
par Rolinh
Salut,
un man top t'aurais répondu
vite fait, un truc dans le genre pour te donner une idée:
Faudrait regarder le man en détail pour faire quelque chose de propre
EDIT: si tu veux faire selon une durée, regarde l'option -d
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 17:29
par Ypnose
Oui tu n'as pas tord. Je vais lire le man.
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 21:24
par Ypnose
J'ai réussi à faire fonctionner ce que je désirais mais il y a quelque chose qui me dérangent un peu. Top affiche la conso CPU sous la forme: x%us, x%sy, x%ni etc...
Je préférerais voir une moyenne en pourcentage comme sous htop avec Avg (average). Je n'ai pas encore trouvé.
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 21:38
par Rolinh
Bon, en fait partir sur top était une mauvaise idée. Avec ps il y a possibilité d'avoir la consommation en ressource CPU de chaque processus.
Exemple:
Code : Tout sélectionner
ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10 > conso_cpu
cela te donnera les 10 processus qui consomment le plus de CPU, en % et te le mettra dans le fichier conso_cpu. Après, tu peux l'inclure dans un script qui l'appelle toute les X secondes.
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 21:56
par Ypnose
Merci, et il y a t'il un script qui affiche la conso CPU totale du système tout entier sous forme de pourcentage?
Re: [Htop]Enregistrer consommation CPU
Publié : ven. 21 janv. 2011, 22:15
par Rolinh
Je t'ai trouvé celui-là:
Code : Tout sélectionner
#!/bin/bash
# by Paul Colby (http://colby.id.au), no rights reserved ;)
PREV_TOTAL=0
PREV_IDLE=0
while true; do
CPU=(`cat /proc/stat | grep '^cpu '`) # Get the total CPU statistics.
unset CPU[0] # Discard the "cpu" prefix.
IDLE=${CPU[4]} # Get the idle CPU time.
# Calculate the total CPU time.
TOTAL=0
for VALUE in "${CPU[@]}"; do
let "TOTAL=$TOTAL+$VALUE"
done
# Calculate the CPU usage since we last checked.
let "DIFF_IDLE=$IDLE-$PREV_IDLE"
let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL"
let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10"
echo -en "\rCPU: $DIFF_USAGE% \b\b"
# Remember the total and idle CPU times for the next check.
PREV_TOTAL="$TOTAL"
PREV_IDLE="$IDLE"
# Wait before checking again.
sleep 1
done
(qui n'est pas de moi donc...)
Re: [Htop]Enregistrer consommation CPU
Publié : sam. 22 janv. 2011, 14:02
par Ypnose
Merci de ton aide Rolinh. Tu es très efficace.
Re: [Htop]Enregistrer consommation CPU
Publié : sam. 22 janv. 2011, 14:53
par Rolinh
Il n'y a pas de quoi
