Revolver Onslaught wrote:
L'utilisation de -O3 est à proscrire depuis GCC-4.3 (j'avais trouvé par Google
à l'époque où j'étais sur Gentoo. Je n'ai plus le lien)
A mon avis, c'est faux. -O3 fonctionne bien sur du code qui suit très
précisément les normes. Et par expérience, ça fonctionne bien sur un
grand nombre de logiciels libres (comme emacs, make, bash, ...). Essaies
donc de recompiler ton application actuelle avec un gcc récent (4.3) en -O3!
* il faut comparer les compilateurs, mais généralement (il y a évidemment
des exceptions) les performances varieront peu (moins de 10%, et souvent
moins de 3%) d'un compilateur à un autre
DAns mon cas, même 3% est toujours intéressant à prendre. ;o)
Mon système est un serveur postfix amélioré. Plus clairement, nous disposons
de plusieurs dizaines de serveurs. Nous avons gagné plus de 30 points CPU sur
un ClamAV compilé avec ICC par rapport à la version compilée avec GCC.
Bien que ClamAV ne soit pas appellé la major partie du temps, ces quelques
points de CPU gagnés ici et là nous amènent à économiser des machines.
J'ai quand même du mal à comprendre la réalité économique de la chose.
Imaginons que tu passes une semaine à peaufiner la compilation de
plusieurs logiciels pour gagner 3% (donc, si tu as un parc de 30
machines, ça économise une machine). J'ignore combien tu coûtes à ton
employeur, mais le chiffre usuel du coût total d'un ingénieur est 150k€
par an (c'est par exemple ce que facturerait une SSII; je parle bien
d'un coût total, pas de ton salaire seul!). Pour une semaine de travail,
ca fait nettement plus cher qu'une machine. Même si tu coûtais deux fois
mois cher (donc seulement 75k€/an) ça ne vaudrait pas forcément le coup.
Optimiser aussi finement (cad pour gagner quelques pourcents) n'est
économiquement rentable que dans des cas très particuliers, où on
déploie sur beaucoup de machines (cad des milliers), ou bien où on a une
application très gourmande sur des très grosses machines.
Le cas extrême, c'est Google (dont la taille du parc est tenu secret,
mais on parle de centaines de milliers). Là, augmenter de quelques
pouillèmes les performances de GCC justifie (et c'est le cas chez
Google) des équipes de plus d'une dizaine de développeurs extrêmement
qualifiés travaillant sur GCC (et aussi binutils), notamment Diego
Novillo & Ian Taylor.
Mais j'aurais tendance à penser que si ton management te demande de
passer une semaine à optimiser clamav pour seulement 30 machines (et
donc dans l'espoir d'en gagner tout au plus une seule), ce n'est pas un
très bon management. En plus, il pourrait être possible qu'un simple
changement de configuration (au sens sysadmin) fasse l'affaire.
Si tu as le temps, racontes nous tes résultats d'optimisation, en terme
de gains de performances. Et si tu utilises GCC, n'oublies pas d'en
prendre une version récente: GCC 4.3 optimise bien mieux que 4.0 ou 3.4!
Cordialement
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***
membre de l'APRIL "promouvoir et défendre le logiciel libre"
Rejoignez maitenant pplus de 3500 adhérents http://www.april.org
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]