optimisation ...

optimisation ... - C++ - Programmation

Marsh Posté le 02-09-2006 à 14:55:34    

Salut,
 
je me posais une question d'optimisation. J'utilise des std::vector, et j'ai fait un programme pour comparer l'efficacite d'un parcours avec un indice et avec un iterateur. Je pensais que l'iterateur serait le plus rapide. C'est effectivement le cas, mais quand je fais une operation sur mon std::vector (+=1), alors le temps devient comparable, voire defavorable a l'iterateur. Normal ?

Reply

Marsh Posté le 02-09-2006 à 14:55:34   

Reply

Marsh Posté le 02-09-2006 à 16:13:00    

ça dépend de ton compilateur. l'itérateur doit générer du meilleur code par défaut si le compilo est tarte. mais l'incrémentation doit avoir le meme effet. donc je comprends pas cette différence. faudra que je regarde quand meme

Reply

Marsh Posté le 02-09-2006 à 16:20:05    

chez moi la version avec itérateur produit du bien meilleur code, plus compacte et plus rapide.

Reply

Marsh Posté le 02-09-2006 à 16:25:40    

avec gcc-4.1, en Os, la version itérateur est bien meilleur. ensuite O2 et O3 la version avec iterateur reste plus courte d'une instruction.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed