chronomètrer une partie d'un programme en C (temps CPU, pas réel)
4 réponses
kathan
Bonjour,
D'habitude j'aime bien chrom=E8trer mes programmmes avec time qui me
permet de discerner le temps r=E9el du temps CPU.
Mais je voudrais maintenant ne chronom=E8trer qu'une partie d'un
programme (fait en C).
En fait, j'ai deux parties dans mon programme, l'allocation de la
m=E9moire et l'algorithme en lui-m=EAme. Je ne voudrais chronom=E8trer que
l'algorithme.
Pour l'instant j'utilise la fonction clock() de time.h mais je
suppopse qu'elle donne le temps r=E9el. Y'aurait-il un moyen d'utiliser
le programme time =E0 l'int=E8rieur de mon programme ou de s=E9parer
l'allocation et l'algorithme en deux programme qui utiliseraient le
m=EAme espace m=E9moire ?
Pour l'instant j'utilise la fonction clock() de time.h mais je suppopse qu'elle donne le temps réel.
Lis son man, tu verras que tu supposes mal.
En interne, cette fonction utilise l'appel système times, un peu plus détaillé.
Arol
"kathan" a écrit dans le message de news:
Pour l'instant j'utilise la fonction clock() de time.h mais je suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser le programme time à l'intèrieur de mon programme ou de séparer l'allocation et l'algorithme en deux programme qui utiliseraient le même espace mémoire ?
Sans vouloir m'avancer, il a les outils de profiling de code pour répondre à ta question. Regarde du coté de gprof. C'est pratique parce que tu as pas besoin de toucher à ton code pour insérer des "balises" de temps.
"kathan" a écrit dans le message de news:
Pour l'instant j'utilise la fonction clock() de time.h mais je
suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser
le programme time à l'intèrieur de mon programme ou de séparer
l'allocation et l'algorithme en deux programme qui utiliseraient le
même espace mémoire ?
Sans vouloir m'avancer, il a les outils de profiling de code pour répondre à
ta question.
Regarde du coté de gprof.
C'est pratique parce que tu as pas besoin de toucher à ton code pour insérer
des "balises" de temps.
Pour l'instant j'utilise la fonction clock() de time.h mais je suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser le programme time à l'intèrieur de mon programme ou de séparer l'allocation et l'algorithme en deux programme qui utiliseraient le même espace mémoire ?
Sans vouloir m'avancer, il a les outils de profiling de code pour répondre à ta question. Regarde du coté de gprof. C'est pratique parce que tu as pas besoin de toucher à ton code pour insérer des "balises" de temps.
manuel viet
kathan wrote:
Bonjour,
D'habitude j'aime bien chromètrer mes programmmes avec time qui me permet de discerner le temps réel du temps CPU. Mais je voudrais maintenant ne chronomètrer qu'une partie d'un programme (fait en C). En fait, j'ai deux parties dans mon programme, l'allocation de la mémoire et l'algorithme en lui-même. Je ne voudrais chronomètrer que l'algorithme. Pour l'instant j'utilise la fonction clock() de time.h mais je suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser le programme time à l'intèrieur de mon programme ou de séparer l'allocation et l'algorithme en deux programme qui utiliseraient le même espace mémoire ?
google gprof man gprof ...
-- Manuel VIET * mailto:
kathan wrote:
Bonjour,
D'habitude j'aime bien chromètrer mes programmmes avec time qui me
permet de discerner le temps réel du temps CPU.
Mais je voudrais maintenant ne chronomètrer qu'une partie d'un
programme (fait en C).
En fait, j'ai deux parties dans mon programme, l'allocation de la
mémoire et l'algorithme en lui-même. Je ne voudrais chronomètrer que
l'algorithme.
Pour l'instant j'utilise la fonction clock() de time.h mais je
suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser
le programme time à l'intèrieur de mon programme ou de séparer
l'allocation et l'algorithme en deux programme qui utiliseraient le
même espace mémoire ?
D'habitude j'aime bien chromètrer mes programmmes avec time qui me permet de discerner le temps réel du temps CPU. Mais je voudrais maintenant ne chronomètrer qu'une partie d'un programme (fait en C). En fait, j'ai deux parties dans mon programme, l'allocation de la mémoire et l'algorithme en lui-même. Je ne voudrais chronomètrer que l'algorithme. Pour l'instant j'utilise la fonction clock() de time.h mais je suppopse qu'elle donne le temps réel. Y'aurait-il un moyen d'utiliser le programme time à l'intèrieur de mon programme ou de séparer l'allocation et l'algorithme en deux programme qui utiliseraient le même espace mémoire ?