Accéder au contenu.
Menu Sympa

linux-31 - Re: Temps d'exécution EFFECTIF d'un processus

Objet : Discussions sur le logiciel libre

Archives de la liste

Re: Temps d'exécution EFFECTIF d'un processus


Chronologique Discussions  
  • From: manu chez Z <emmanuel.courcelle AT zaclys.net>
  • To: peterpan31 <peterpan31 AT free.fr>, linux-31 AT culte.org
  • Subject: Re: Temps d'exécution EFFECTIF d'un processus
  • Date: Wed, 30 Aug 2023 21:33:23 +0200
  • Authentication-results: pic2m.le-pic.org; dkim=pass (1024-bit key; secure) header.d=zaclys.net header.i= AT zaclys.net header.a=rsa-sha256 header.s=default header.b=FpBCFRpF; dkim-atps=neutral
  • Authentication-results: mail.zaclys.net; dmarc=fail (p=reject dis=none) header.from=zaclys.net
  • Authentication-results: mail.zaclys.net; spf=fail smtp.mailfrom=zaclys.net
  • Dmarc-filter: OpenDMARC Filter v1.4.1 mail.zaclys.net 37UJXLHE046240

Le 30/08/2023 à 21:29, peterpan31 a écrit :
Bonsoir Emmanuel et le reste du Monde,

Je comprends avec ta boucle que le cpu est fort occupé.

Si je fais :
$ espeak -s 10 -f unfichiertxt &

alors le temps cpu est à zéro (0:00) !
Alors que espeak lit lentement...
Le cpu n'est donc pas occupé, j'ai du mal à le comprendre.
Je ne peux donc pas faire comme cela.

Je vais en rester à un chronomètre en utilisant perf_counter() (j'adapte un script bash en Python pour son interface graphique avec tkinter).

Merci
pierre estrem

Pour voir plus clairement les temps système et user, tu peux aussi essayer ça:

/usr/bin/time  espeak -s 10 -f unfichiertxt

Lorsque espeak aura terminé time t'affichera les différents temps.

Emmanuel



Le 30/08/2023 à 19:04, manu chez Z a écrit :
Le 30/08/2023 à 18:54, peterpan31 a écrit :
Bonsoir Emmanuel et le reste du monde,

Je teste avec un "sleep 3600&"
J'ai son PID avec $!.

Et je fais :
ps -p $! -o 'bsdtime='
renvoie :
0:00

Pas bon...

ben si justement c'est bon:

*sleep $! &*

*ps -p $! -o 'etime'**
**    ELAPSED**
**      00:25**
*

*ps -p $! -o 'bsdtime'**
**  TIME**
**  0:00*

Dans le premier cas on mesure simplement le temps écoulé depuis le lancement de la commande, dans le second cas on mesure le temps cpu: comme durant un sleep le cpu ne fait absolument rien, ça ne lui prend pas beaucoup de temps.

Par contre si tu fais:

*while true; do i=$(( i+1)); done &*

*ps -p $! -o 'etime' && ps -p $! -o 'bsdtime'*

*    ELAPSED
      00:42
  TIME
  0:42*

Cette fois le cpu pédale comme un fou, du coup le temps écoulé est le même que le temps cpu.

Amicalement

Emmanuel



Note que je ne veux pas justement de temps cumulés.

Sinnon je devrais faire un "chrono" mais c'est compliqué.

Merci
pierre estrem



Le 30/08/2023 à 15:30, manu chez Z (via linux-31 Mailing List) a écrit :
Le 30/08/2023 à 15:28, manu chez Z (via linux-31 Mailing List) a écrit :
Le 30/08/2023 à 14:26, peterpan31 (via linux-31 Mailing List) a écrit :
Bonjour,

J'essaie de connaître le temps d'exécution EFFECTIF d'un processus (ici espeak).
C'est-à-dire qu'il ne faut pas compter les pauses faites avec le signal SIGSTOP.

ps $PID -o 'etimes=' renvoie le temps global (pauses comprises).
Je ne veux pas ce chiffre.

Dois-je voir du côté de 'top' ?

Une idée ?

pierre estrem

Bonjour Pierre

Les outils peuvent te donner plusieurs sortes de temps:

  * temps ELAPSED c'est-à-dire le temps écoulé (y compris les pauses
    en effet) depuis le démarrage du processus, c'est ce que te donne
    le etime ou etimes de ps
  * temps USER c'est-à-dire le temps passé par le CPU en mode
    "utilisateur": les temps où le processus est en attente
    d'interaction d'utilisateur ou d'entrées-sorties ne sera pas
    compté car le CPU n'exécute pas de code de ce processus
  * temps SYSTEM c'est-à-dire le temps passé pour le processus en mode
    système, par exemple le temps passé à lire un fichier.

Mais je ne connais pas de commande permettant d'avoir le temps elapsed moins les pauses. Je pense que ce que tu demandes correspond à peu près à la commande: ps -p 1304 -o 'bsdtime' (temps user + system d'après le man)

je voulais dire: ps -p $PID -o 'bsdtime'

pardon pour l'erreur

Emmanuel

Amicalement,

Emmanuel


-- 






Archives gérées par MHonArc 2.6.19+.

Haut de le page