Journal : Le résultat de la commande time...

Posté par Sylvain Rampacek (Jabber id, page perso, ) le 30 mai 2003
0
Cher petit journal... ;-) La commande time nous renvoit le temps user et le temps system. Je sais que dans le temps system on y compte les allocations, mais quoi d'autres aussi ? (les déréférencements de pointeurs sont-ils dedans ??) Merci d'avance à tous !!

> Lire le journal (4 commentaires, moyenne: 1,3).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Re: Le résultat de la commande time...

Posté par Fabimaru! (page perso, ) le 30/05/2003 à 11:14. (lien). Évalué à 1.

Ben j'imagine que c'est simple: User c'est ce qui se passe en espace utilisateur, System ça se passe en mode noyau.
Pour les allocations mémoire, tu as deux cas:
- les fonctions d'allocation demandent de la mémoire au système
- la mémoire vient d'un pool de mémoire du process, dont pas d'appel système pour ca

Les pointeurs, ça se passe en User space (sauf si tu as des fichiers mappés j'imagine).

--
Pas de bureau 3d libre sans drivers libres!
  • [^]Re: Le résultat de la commande time...

    Posté par Sylvain Rampacek (Jabber id, page perso, ) le 30/05/2003 à 11:34. (lien). Évalué à 1.

    en fait, j'aimerai réellement savoir les actions qui sont comptées en mode "system".

    Car là, j'ai un programme qui ne fait pas d'allocation mémoire (juste à l'initialisation qui dure très peu de temps).

    En fait, il fait plein de parcours de listes chaînées avec plein de boucle dans tous les sens, des additions, des multiplications et des divisions (bref, un gros algo) et il passe 50% en user et 50% en system (suivant les données en entrée, il peut mettre plusieurs heures voir jours à calculer, de plus il s'exécute sur une grosse machine à plusieurs processeurs (donc il en a un toujours à lui)).

    • [^]Re: Le résultat de la commande time...

      Posté par PLuG () le 30/05/2003 à 12:03. (lien). Évalué à 2.

      C'est assez simple:
      ton apli fait des appels a des librairies (au moins la libc), et ces appels font a leur tour des appels au systeme. Les appels systemes sont comptés dans system.

      pour les voir, il suffit d'utiliser "strace" qui va logguer tous les appels systemes engendrés par ton appli... je parie qu'en plus des calculs il y a des operations d'entrees sorties, des lectures/ecritures sur le disque/tty/... des malloc/free ...
      bref tu verra bien avec strace ce que fout ton process :-))

      • [^]Re: Le résultat de la commande time...

        Posté par Sylvain Rampacek (Jabber id, page perso, ) le 30/05/2003 à 12:41. (lien). Évalué à 1.

        ok ok...
        merci beaucoup !

        et sinon, la re-copie de paramètre etc lors de l'appel d'une fonction (récursive ou non), c'est compté en temps user ou system ?

Revenir en haut de page