salut a tous,
Comment connaitre le temps d'execution de mon programme ? avec quelle option dois-je compiler (gcc sous linux) ? quelle fonction dois-je utiliser dans mon programme ? (je suis debutant merci de m'expliquer).
Merci,a++;
salut a tous,
Comment connaitre le temps d'execution de mon programme ? avec quelle option dois-je compiler (gcc sous linux) ? quelle fonction dois-je utiliser dans mon programme ? (je suis debutant merci de m'expliquer).
Merci,a++;
Tu peux essayer avec la fonction clock(). Tu lis avant ta question, tu lis après, tu divises la différence par CLOCKS_PER_SEC. Le tout avec <time.h>.
Avec GCC, tu peux utiliser le profiler (gprof) pour tester très efficacement la vitesse d'une fonction, nombre d'appels, etc. Mais je sais pas utiliser :-/
@+ Haypo
Salut,
clock,ca doit etre les coups d'horloge du processeur c'est ca ?
Au fait,si j'ai bien compris,ce que je dois fair pour tester le temps complet d'execution de mon programme je fais donc :
c'est bien cela ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 main(){ utiliser la fonction clock(); gros bloc de code; utiliser la fonction clock(); je divise la difference par CLOCKS_PER_SEC; j'imrpime a l'ecran; je sors; }
Salut
Il y a gprof qui te permet ca, pour en savoir plus fais man gprof
Salut,
Sinon il y a une dernière solution qui n'est pas une solution C mais un programme présent sur tout les linux/unix: time.
http://dpobel.free.fr/man/html/affiche_man.php?id=4007
a++
Salut
gProf n'es pas une fonction en c mais une commande. Lorsque ton programme est compiler avec -pg avec gcc. quand tu l'execute il dois te faire un fichier .out. quand tu analyse ce fichier avec gprof, il te dis plein d'informations comme le temp passer dans chaque fonction. Alors tu peux voir quel fonction est trop gourmante en resource systeme.![]()
Je voudrais complèter cette question. Moi je cherche à afficher le temps d'exécution d'une fonction, en C, avec MSC++6. J'utilise la fonction :
time(&start);
time(&end);
et j'affiche end-start.
Mais cette manière de faire me retourne le temps en secondes... Existe-t-il une fonction ou une autre manière de procèder pour afficher ce temps en millisecondes.
Merci d'avance
Salut !
On ne peut pas recuperer la valeur en seconde et la transformer nous meme ? Ca m'interesse aussi !Envoyé par stephdiplo150
Freif'
Partager