Optimisations de compilation

Optimisations de compilation

by Antoine Hugo Thomas Fontaine -
Number of replies: 1

Bonjour,

Je voudrais savoir avec quel compilateur et quel option le programme sera testé; notamment pour les optimisations. En effet, dans l'exemple de mon programme, si je compile avec gcc et -Ofast, j'obtiens un programme jusqu'à 8 fois plus rapide que sans, et presque les mêmes performances avec les optimisations "de base" en -O1.

Savoir que les performances de notre programme sont suffisamment bonnes permettrait d'éviter de perdre trop de temps à optimiser plus que nécessaire.

Merci

In reply to Antoine Hugo Thomas Fontaine

Re: Optimisations de compilation

by Ronan Boulic -

merci pour votre question. C'est normal de définir l'outil de mesure si on évalue les performances de votre programme en comparaison de celles du programme de démo.

Le programme de démo a été produit avec la commande suivante :

g++ -Wall -Wextra -std=c++11 -O3 -fvisibility=hidden -fvisibility-inlines-hidden -o demo projet19.cc

Il y a effectivement l'option d'optimisation -O3 que vous pouvez ajouter à votre commande de compilation. Pas sûr que le reste ait un impact dramatique sur les performances. En tout cas nous recompilerons votre code source avec la même commande de compilation que le programme de démo, probablement celle qui est ci-dessus.

Concernant l'option -Ofast que vous mentionnez, c'est une mauvaise idée car le gain en vitesse est obtenu au détriment de la précision sur les calculs en virgule flottante. Ce n'est pas ce que nous voulons car le résultat du programme pourrait être différent de celui du programme de démo au niveau de l'étape du seuillage.