cs_othland
Messages postés298Date d'inscriptionjeudi 18 décembre 2003StatutMembreDernière intervention 9 février 2010
-
4 mars 2006 à 16:46
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014
-
5 mars 2006 à 17:17
slt tlm:
je veux calculer le temps d'execution d'une portion de programme, pour cela j'ai utilisé ce qui suit:
////////////////////////////
clock_t t1,t2,t3;
t1=clock();
//ma portion
.
.
//
t2=clock();
t3=t2-t1;
/////////////////////////
1) est ce que c'est juste???
2) comment puis je convertir par la suite le résultat en milli-secondes ou en secondes et le mettre dans un float ou dans un string???
cs_max12
Messages postés1491Date d'inscriptiondimanche 19 novembre 2000StatutModérateurDernière intervention 7 juillet 2014 4 mars 2006 à 19:33
GetTickCount() si tu prog sous Windows
L'opérateur modulo pour les sec et tout
itoa(t3, Chaine, 10); //En chaine
wsprint(Chaine, "%s:%s", (t3 / 60000),
(t3 / 1000) %60); //Minute : Seconde
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 5 mars 2006 à 03:24
GetTickCount() seulement sur des traitement longs car 'by design' aucune précision garantie.
Windows fournit QueryPerformanceCounter() pour la haute précision.
RDTSC (asm) est utilisable et fort utile, sort un 64 bits sur EDX:EAX qu'il suffit de mettre dans un unsigned __int64 en entrée puis en sortie, idéal pour comparer finement 2 algos.