Bonjour à tous.
En mai/juin dernier j'avais remporté le concours de programmation Intel grâce entre autres au fait que j'avais remplacé tous les std::vector de mon code par des C array. On entend souvent dire que la différence de perf est légère, mais je ne sais pas comment cela est possible j'avais facilement un facteur 3 de perfs entre les 2.
Même au niveau des tailles dynamiques, il y avait toujours une différence de perfs énormes entre un int *v = new int[100] vs un std::vector (que ça soit compilé sous intel ou sous g++).
Je ne sais pas trop d'où viens cet overhead énorme, mais le fait est que je n'utilisais maintenant plus que des C array pour les fonctions qui sont au coeur de mes calculs (celles qui sont appellées des millions de fois).
Je me demandais si vous pensiez que les std::array de C++ 2011 remédiaient à ce problème.
Merci beaucoup![]()
Partager