URL: https://linuxfr.org/forums/programmation-c/posts/classe-double-et-vitesse Title: Classe / double et vitesse Authors: Mais qui suis-je ? :) Date: 2008年11月04日T14:59:31+01:00 Tags: Score: 0 Bonjours à tous. J'ai récuperé il y a quelques jours un code C++ écrit à la C (pas de classes, des passage par pointeurs, des malloc etc... Bref c'est juste que le code devait appeler certaines librairies écrite en C++ qu'il est C++) Ce code étant plein de fuite de mémoire, j'ai ré-ecris son contenus sous forme d'une Classe C++ De plus j'ai utilisé des variable double au lieu de float ( simplement car j'utilise fftw qui prend en input des double) Au niveau des bonnes nouvelles, je n'ai plus de fuite de mémoire, et j'arrive à garder une consommation mémoire très raisonnable. Par contre j'ai perdu un facteur 2 en vitesse, en ayant globalement les mêmes fonctions juste organisé un peu différemment. La bonne question est pourquoi ? -Est ce que crée des classes les détruire et appeler des fonctions membre de classe est plus lent qu'appeler des fonctions ? -Est ce que travailler en double précision est plus lent -Est ce que en réglant une fuite de mémoire j'ai rajouter des delete qui prennent beaucoup de temps ? -Est ce que c'est pas normal et que je devrais repenser la façon dont j'ai écris le code ? Je précise que dans mon cas, la vitesse d'exécution est secondaire, et que de toute façon c'est long ( Traitement du signal avec plusieurs FFT par évènement soit en temps absolu 0.5 s par événement avec le vieux code contre 1 sec par evt avec le nouveau) . Par contre régler la fuite de mémoire me permet d'envisager un traitement massif de donnée sans tuer la machine...