Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Performance Compilation gcc -g

5 réponses
Avatar
lhommedumatch
Bonjour,
Est-ce que un executable g=E9n=E9r=E9 avec l'option debug -g de gcc
s'=E9xecute moins rapidement que sans l'option -g?
Y a t-il des probl=E8mes de performances?
A+

5 réponses

Avatar
espie
In article ,
lhommedumatch wrote:
Bonjour,
Est-ce que un executable généré avec l'option debug -g de gcc
s'éxecute moins rapidement que sans l'option -g?
Y a t-il des problèmes de performances?
A+



Ca depend... d'ou sont stockees les infos de debug. Si c'est un format
moderne ou elles sont a part de l'executable principal, les seuls soucis
de performance sont dans la taille de l'executable (et des fichiers objets
pendant la compilation).

Sur du C++, ca n'est pas forcement anecdotique...
Avatar
lhommedumatch
On 6 oct, 18:27, (Marc Espie) wrote:
In article .com>,

lhommedumatch   wrote:
>Bonjour,
>Est-ce que un executable généré avec l'option debug -g de gcc
>s'éxecute moins rapidement que sans l'option -g?
>Y a t-il des problèmes de performances?
>A+

Ca depend... d'ou sont stockees les infos de debug. Si c'est un format
moderne ou elles sont a part de l'executable principal, les seuls soucis
de performance sont dans la taille de l'executable (et des fichiers objet s
pendant la compilation).

Sur du C++, ca n'est pas forcement anecdotique...



merci
Avatar
James Kanze
On Oct 6, 5:22 pm, lhommedumatch wrote:

Est-ce que un executable généré avec l'option debug -g de gcc
s'éxecute moins rapidement que sans l'option -g? Y a t-il des
problèmes de performances?



Ça dépend. La performance du code généré dépend de beaucoup
d'options. La règle générale, c'est de compiler avec les options
qui conviennent le mieux pour le développement, puis de régarder
de plus près s'il y a réelement un problème de performance (tout
en sachant que ça ne ferait jamais une différence énorme --
s'il y a réelement un problème de performance, souvent, il faut
régarder les algorithmes dont on se sert).

--
James Kanze (GABI Software) email:
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Avatar
espie
In article ,
James Kanze wrote:
On Oct 6, 5:22 pm, lhommedumatch wrote:

Est-ce que un executable généré avec l'option debug -g de gcc
s'éxecute moins rapidement que sans l'option -g? Y a t-il des
problèmes de performances?



Ça dépend. La performance du code généré dépend de beaucoup
d'options. La règle générale, c'est de compiler avec les options
qui conviennent le mieux pour le développement, puis de régarder
de plus près s'il y a réelement un problème de performance (tout
en sachant que ça ne ferait jamais une différence énorme --
s'il y a réelement un problème de performance, souvent, il faut
régarder les algorithmes dont on se sert).



*en theorie*, l'option -g de gcc ne change strictement rien au code
genere en lui-meme: si tu vois des differences avec -g et sans -g, toutes
autres options etant egales par ailleurs, c'est un bug.

Le seul cas ou tu vas bien sur voir de petites differences, c'est que -g
active le mode debug, donc change un ou deux symboles de preprocesseur
(coucou, assert() ).
Avatar
Jean-Marc Bourguet
(Marc Espie) writes:

Le seul cas ou tu vas bien sur voir de petites differences, c'est que -g
active le mode debug, donc change un ou deux symboles de preprocesseur
(coucou, assert() ).



Je suis certain de n'avoir jamais vu NDEBUG couple a -g sur les
compilateurs que j'ai utilise serieusement. Je me demandais s'il y avait
d'autres symboles que je ne connaissais pas (ce pourrais etre parfois
utile), mais gcc -E -Wp,-dM ne me donne pas un resultat different de
gcc -g -E -Wp,-dM. Aurais-tu plus de details?

A+

--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org