Ce petit programme me permet de comparer les temps d'exécution d'algorithmes.
J'utilise la fonction QueryPerformanceCounter pour être le plus précis possible.
Le premier algo sert de temps de référence.
Ensuite, j'affiche l'écart de temps des autres algos en pourcentage (50% = 2x plus rapide / 100% = même vitesse / 200% = 2x plus lent)
Pour ne pas fausser les temps, je procède ainsi :
- je ferme toutes les applications risquant de surveiller les algos (anti-virus et firewall)
- je sélectionne le mode le plus rapide lors de la construction (mode 'Release')
- je lance le test en cliquant sur l'exe (et pas depuis Visual C++)
Dans l'exemple, je teste diverses méthodes d'écriture en boucle dans un vecteur.
Sur ma machine, la boucle est beaucoup plus performant avec l'opérateur [] qu'avec les fonctions membres begin() et end().
Je serais intéressé de connaître vos résultats pour d'autres algo comme les boucles for et while, l'usage de int ou long, ...