malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 2009
-
24 sept. 2004 à 12:41
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 2009
-
24 sept. 2004 à 14:35
Je chronomètre une de mes fonctions et je me suis rendu compte d'un truc étrange: alors que je fais systématiquement les mêmes calculs d'une fois à l'autre, je n'ai pas le même temps!
Je chronomètre ainsi:
ftime(&TempsDepart);
converti = (((TempsDepart.time-1069000000)*1000)+ TempsDepart.millitm);
rep = quartic(alpha,beta); // ma fonction
ftime(&TempsArrive);
converti2= (((TempsArrive.time-1069000000)*1000)+ TempsArrive.millitm);
A savoir que ce chrono je l'ai pris tel quel dans une source de ce site...
Si je lance plusieurs fois, j'aurai par exemple en console mes résultats ainsi:
Le temps d'execution est de 30 millisecondes
Le nbre de modulo GMP est de 2168
Le nbre de modulo <&> est de 674
Le nbre de multip GMP est de 5723
Le nbre de multip <*> est de 2499
Le residu biquadratique est 1
et une autre fois:
Le temps d'execution est de 20 millisecondes
Le nbre de modulo GMP est de 2168
Le nbre de modulo <&> est de 674
Le nbre de multip GMP est de 5723
Le nbre de multip <*> est de 2499
Le residu biquadratique est 1
Tous les chiffres sont identiques à l'exception du temps de calcul! La différence est de 50% tout de même!!!