Temps d'execution d'une boucle
Bonjour,
Je cherche de l'aide pour calculer le temps d'exécution de la boucle
suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
#include<stdio.h>
#define Maxit 100000000
main()
{
long i;
double x;
double y;
x=1;
y=1.000001;
for (i=1; i<= Maxit; i++)
x=x*y;
printf("x:% .14E\n",x);
return(0);
} |
Temps d'execution d'une boucle
En utilisant la fonction "GetTickCount()" j'ai obtenu un temps d'exécution de 0.65 sec pour 100000000 d'itérations, contrairement a "clock_t start, end",qui affiche 1.70 sec, bizarre nom ?
J'ai testé le code avec deux compilateurs Borland C/C++ 4.5 et Vc++ 5.0
sous windows Xp sp3 , Processeur dual core 4300@1.80Mhz.
Ce code est en fait un Benchmark utilisé par Bob ZALE pour montrer
les performances de son compilateur, en l'occurrence PowerBasic 4 en mode
console, qui donne un résultat de 0.28 sec!!!
Mais cela est une autre histoire,
Merci a tous