View previous topic :: View next topic |
Author |
Message |
Stormkings Guru
Joined: 27 Sep 2002 Posts: 352 Location: Europe
|
Posted: Thu Feb 03, 2005 1:21 pm Post subject: gcc-4.0.0_alpha ebuilds |
|
|
hi, hat schonmal jemand eins der gcc-4.0 ebuilds getestet?
habe den gestern installiert, funktioniert soweit sehr gut. selbst einige kdepakete lassen sich bauen. allerdings stürzen licq und firefox sofort ab, sobald ich mit gcc-config das profil wechsle. ich weiß , dass das teil hardmasked und alpha ist, aber sowas sollte doch eigentlich nicht sein, oder?
irgendwelche ähnliche erfahrungen?
grüße |
|
Back to top |
|
|
hds Advocate
Joined: 21 Aug 2004 Posts: 2629 Location: Sprockhoevel [GER]
|
Posted: Thu Feb 03, 2005 2:55 pm Post subject: |
|
|
es gibt einige englischsprachige threads dazu. haettest du die gelesen, haettest du den nicht installiert.
ps: der iss (bisher noch) langsamer als 3.4 |
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Thu Feb 03, 2005 2:56 pm Post subject: Re: gcc-4.0.0_alpha ebuilds |
|
|
Warum sollte das nicht so sein? Mozilla ist wohl einer der härtesten Tests für einen Compiler, weil es riesengroß ist und aus sehr unterschiedlichem Code besteht. Ist noch nicht ewig her, dass es überhaupt mit -O2 übersetzbar ist. Wenn alles funktionieren würd, wär es kein Alpha. Selbst 3.4.3 hat noch genügend Bugs.
Abgesehn davon gibts bei 4.0 sicher wieder einige inkompatible Änderungen, die z.B. Mozilla und Java erneut unverträglich machen könnten. |
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Thu Feb 03, 2005 3:01 pm Post subject: |
|
|
hds wrote: | ps: der iss (bisher noch) langsamer als 3.4 |
Bei gcc wird jede Version um Einiges langsamer. 3.4 ist sehr viel langsamer als 3.3, und 2.x war um Größenordnungen schneller. Die Frage ist, wie es mit den Ergebnissen ausschaut. |
|
Back to top |
|
|
Stormkings Guru
Joined: 27 Sep 2002 Posts: 352 Location: Europe
|
Posted: Thu Feb 03, 2005 4:25 pm Post subject: |
|
|
ich weiß nicht ob ich richtig verstanden worden bin.
die programme licq und firefox sind nicht mit dem gcc-4.0 kompiliert, sondern mit dem 3.4.3. würden die nicht laufen nachdem ich sie mit dem 4.0er gebaut hätte, würde mich das nicht sehr wundern und ich hätte wohl auch nicht gefragt.
das ganze system damit zu bauen werde ich wohl nicht versuchen jedenfalls nicht auf der arbeitsinstallation. |
|
Back to top |
|
|
sirro Veteran
Joined: 20 Jul 2003 Posts: 1472 Location: aachen.nrw.de.eu
|
Posted: Thu Feb 03, 2005 4:33 pm Post subject: Re: gcc-4.0.0_alpha ebuilds |
|
|
Stormkings wrote: | ich weiß , dass das teil hardmasked und alpha ist, aber sowas sollte doch eigentlich nicht sein, oder? |
Fuer sowas ist hardmasking und -* da. Merke: Pakete werden eigentlich nie ohne grund package.masked. Und gerade der gcc ist immer ein heikles Thema was maskierte Pakete angeht...
c07 wrote: | Abgesehn davon gibts bei 4.0 sicher wieder einige inkompatible Änderungen, die z.B. Mozilla und Java erneut unverträglich machen könnten. |
AFAIK soll das bei 4.0 nicht der Fall sein. Ich meine sowas gelesen zu haben. |
|
Back to top |
|
|
zielscheibe l33t
Joined: 02 Apr 2004 Posts: 804 Location: Aachen
|
Posted: Thu Feb 03, 2005 4:43 pm Post subject: |
|
|
Hi,
c07 wrote: | hds wrote: | ps: der iss (bisher noch) langsamer als 3.4 |
Bei gcc wird jede Version um Einiges langsamer. 3.4 ist sehr viel langsamer als 3.3, und 2.x war um Größenordnungen schneller. Die Frage ist, wie es mit den Ergebnissen ausschaut. |
Hmm, ist das wirklich so?
Code: |
zielscheibe uhaft #genlop -t mpg123
Thu Feb 3 17:30:28 2005 >>> media-sound/mpg123-0.59s-r9
merge time: 24 seconds.
Thu Feb 3 17:31:36 2005 >>> media-sound/mpg123-0.59s-r9
merge time: 37 seconds.
|
Die deutlich (meist ~40% bei -O2) geringere Zeit beansprucht hier der 3.4er, im Gegensatz zum letzteren Wert (3.3.3).
Die höhere Kompilierungsgeschwindigkeit, war für mich der ausschlaggebende Punkt auf den 3.4er überhaupt umzusteigen. |
|
Back to top |
|
|
hds Advocate
Joined: 21 Aug 2004 Posts: 2629 Location: Sprockhoevel [GER]
|
Posted: Thu Feb 03, 2005 5:02 pm Post subject: |
|
|
ich denke mal wir reden von 2 paar schuhen? die compile time ist mir egal. 3.4 bringt mir einen ordentlichen schub in den applikationen selbst!
und bei 4.x alpha sind, nach angaben der jungs aus dem englischen thead, die applikaionen langsamer. |
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Thu Feb 03, 2005 6:29 pm Post subject: |
|
|
zielscheibe wrote: | Die deutlich (meist ~40% bei -O2) geringere Zeit beansprucht hier der 3.4er, im Gegensatz zum letzteren Wert (3.3.3). |
Hm, meine Einschätzung beruht auch vor allem auf der emerge.log. Allerdings sagt das fast nichts, weil es mal mit 100% CPU über Nacht läuft und mal nebenbei bei heftiger sonstiger Last. Außerdem ändern sich CFLAGS, USE-Flags, Ebuilds und Sourcen (wobei die beiden gcc bei mir auch nicht mit 100% identischen CFLAGS gebaut sind).
Verifiziert hab ich es zumindest mit Bash 3.0 und -O3 (3.4.3 braucht da 6% länger als 3.3.5). Bei -O2 ist tatsächlich 3.3.5 um ein gutes Prozent schneller. Bei -O3 sind halt in 3.4 -fweb und -funswitch-loops dazugekommen.
mpg123 ist zum Vergleich eher weniger geeignet, weil es einiges zu den CFLAGS dazutut. Bei mir ergibt sich das:
Code: | ~ # gcc-config i686-pc-linux-gnu-3.3.5 && . /etc/profile
~ # time CFLAGS="-pipe -march=athlon -O2 -fomit-frame-pointer" emerge mpg123
163.551 real, 136.120 user, 16.323 sys, 93.20 %
~ # gcc-config i686-pc-linux-gnu-3.4.3 && . /etc/profile
~ # time CFLAGS="-pipe -march=athlon -O2 -fomit-frame-pointer" emerge mpg123
163.342 real, 136.096 user, 16.798 sys, 93.60 %
~ # gcc-config i686-pc-linux-gnu-3.3.5 && . /etc/profile
~ # time CFLAGS="-pipe -march=athlon -O3 -fomit-frame-pointer" emerge mpg123
168.021 real, 138.067 user, 16.844 sys, 92.19 %
~ # gcc-config i686-pc-linux-gnu-3.4.3 && . /etc/profile
~ # time CFLAGS="-pipe -march=athlon -O3 -fomit-frame-pointer" emerge mpg123
169.158 real, 142.449 user, 16.979 sys, 94.25 % |
|
|
Back to top |
|
|
hds Advocate
Joined: 21 Aug 2004 Posts: 2629 Location: Sprockhoevel [GER]
|
Posted: Thu Feb 03, 2005 6:39 pm Post subject: |
|
|
du wirst mir langsam echt zu suspekt - sorry
du kannst doch nicht mit einem source testen, welcher compiler schneller ist
fuer sowas gibt es benchmarks, die saemtliche szenarien durchspielen.
//edit: mann mann mann - waere ich mal bei meinem vorsatz geblieben, niemals im deutschen forum zu posten. haette ich weniger herzklabaster
Last edited by hds on Thu Feb 03, 2005 6:42 pm; edited 1 time in total |
|
Back to top |
|
|
zielscheibe l33t
Joined: 02 Apr 2004 Posts: 804 Location: Aachen
|
Posted: Thu Feb 03, 2005 6:40 pm Post subject: |
|
|
@hds
In der anderen Richtung wird aber IMHO auch kein Schuh daraus.
Von einem merkbaren "Schub" in Allerweltsapps kann ich zwar hier nicht berichten (die CPU dreht meist eh Däumchen), im encoding sind es vllt 10% Mehrleistung, die der 3.4.x vs. 3.3.x ermöglicht . Ein gcc-2.x sieht jedoch kein Licht im direkten Vergleich mit dem 3.4er.
/edit
@c07
der mpg123 war jetzt willkürlich von mir gewählt, da ich auf die Schnelle kein Xorg-, gcc-, mozilla-Vergleichslog zur Verfügung hatte.
Es kann ja durchaus sein, daß die 3.3er Revisionen inzwischen ebenfalls schneller compilen.
Last edited by zielscheibe on Thu Feb 03, 2005 6:55 pm; edited 1 time in total |
|
Back to top |
|
|
hds Advocate
Joined: 21 Aug 2004 Posts: 2629 Location: Sprockhoevel [GER]
|
Posted: Thu Feb 03, 2005 6:52 pm Post subject: |
|
|
also KDE ist fuer mich keine "allerweltsapp". es ist halt die GUI, welche ich regelmaessig nutze, um meine taegliche arbeit zu erledigen.
office anwendungen, grafig bearbeitung, und video bearbeitung sowie konvertierung all dieser input files diesbezueglich. ja, auch schonmal nach und nach meine CDs auf mp3 zu konvertieren, weil, ist ja angenehm.
es ist definitiv nicht nur mir aufgefallen, das die ganze geschichte durch recompilen von gcc 3.3.x auf gcc 3.4.x einen gewaltigen schub in punkto verarbeitungsgeschwindigkeit gebracht hat. prelinking hatte ich schon mit gcc 3.3, somit liegts nicht ausschliesslich daran. mag aber ein zusammenhang sein?
siehe auch "fly with gentoo". such mal nach dem thread. fuer mich und viele andere hat es was gebracht, definitiv.
und - wie gesagt, ob die compile time nun kuerzer oder laenger wurde, das ist fuer mich persoenlich irrelevant. klar, da gehen die gemueter auseinander.
fuer mich persoenlich ist es halt wichtig, das die apps flink abeiten. da darf der dann gerne (wenn ich eh penne) etwas laenger compilen |
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Thu Feb 03, 2005 8:22 pm Post subject: |
|
|
hds wrote: | du kannst doch nicht mit einem source testen, welcher compiler schneller ist
fuer sowas gibt es benchmarks, die saemtliche szenarien durchspielen. |
Das war ja nur ein Beispiel, dass zumindest die Zeiten von zielscheibe nicht universell richtig sein können. Wie gesagt kommt meine Einschätzung vor allem aus den Zeiten in emerge.log, die viele Unsicherheiten haben.
Verglichen mit normalen Benchmarks testet aber schon das Compilieren von einem einzigen Paket dieser Größenordnung eine ganze Menge von dem, was ein Compiler überhaupt jemals macht. Dass es trotzdem nur ein gewisser Ausschnitt ist, der z.B. C++ nicht berücksichtigt und wahrscheinlich einen relativ einheitlichen Programmierstil hat, ist mir schon klar.
Dass die Geschwindigkeit der gebauten Programme wichtiger als die von gcc selber ist, ist auch klar ("Geschwindigkeit des gcc" ist für mich aber die Geschwindigkeit beim Compilieren). Allerdings ist halt der gcc auch wieder eine Anwendung, die bei Gentoo nicht gerade wenig benutzt wird. |
|
Back to top |
|
|
hds Advocate
Joined: 21 Aug 2004 Posts: 2629 Location: Sprockhoevel [GER]
|
Posted: Thu Feb 03, 2005 9:47 pm Post subject: |
|
|
err, dann emerge doch bin ebuilds, wenn dich die compile time stoert.
existieren doch von allen dicken wichtigen packages!
man compiled doch eh nur selbst, wenn man im endeffekt die laufzeit optimizen will - ansonsten faehrt man SuSE |
|
Back to top |
|
|
Jinidog Guru
Joined: 26 Nov 2003 Posts: 593 Location: Berlin
|
Posted: Thu Feb 03, 2005 10:04 pm Post subject: |
|
|
Es gibt derzeit außer für Entwickler keinen Grund, sich den gcc-4.0 zu mergen.
Ich hatte mir den installiert und den kleinen Benchmark veröffentlicht, der im gcc-4.0 Thread steht.
Tatsächlich produzierte der gcc-Snapshot vom 30.1 deutlich langsameren Code als gcc-3.4.3.
Auch das Binary war größer.
Die Installation hat also keinen Vorteil. _________________ Just unused Microsoft-Software is good Microsoft-Software |
|
Back to top |
|
|
Stormkings Guru
Joined: 27 Sep 2002 Posts: 352 Location: Europe
|
Posted: Fri Feb 04, 2005 9:59 am Post subject: |
|
|
also ich kann das nicht so klar bestätigen, welcher compiler langsamer oder schneller ist. allerdings habe ich auch nicht so extrem optimiert wie Jinidog. was die compilezeit betrifft ist bei mir der gcc-4.0 deutlich schneller bei den kde pakten, die ich probiert habe. interessehalber habe ich dann auch nbench emerged. wen es interessiert hier die ausgaben von nbench (4.0,3.4.3):
Code: | CFLAGS="-march=athlon-xp -O2 -falign-functions=64 -frename-registers -fomit-frame-pointer -ftracer -pipe" |
Code: | BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)
TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 853.76 : 21.90 : 7.19
STRING SORT : 108.76 : 48.60 : 7.52
BITFIELD : 3.3115e+08 : 56.80 : 11.86
FP EMULATION : 86.2 : 41.36 : 9.54
FOURIER : 16923 : 19.25 : 10.81
ASSIGNMENT : 21.48 : 81.73 : 21.20
IDEA : 3187.3 : 48.75 : 14.47
HUFFMAN : 1368.5 : 37.95 : 12.12
NEURAL NET : 27.038 : 43.43 : 18.27
LU DECOMPOSITION : 902.16 : 46.74 : 33.75
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 45.074
FLOATING-POINT INDEX: 33.931
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : AuthenticAMD AMD Athlon(TM) XP 2600+ 1917MHz
L2 Cache : 512 KB
OS : Linux 2.6.10-mm2
C compiler : 4.0.0
libc :
MEMORY INDEX : 12.368
INTEGER INDEX : 10.475
FLOATING-POINT INDEX: 18.819
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder. |
Code: | BYTEmark* Native Mode Benchmark ver. 2 (10/95)
Index-split by Andrew D. Balsa (11/97)
Linux/Unix* port by Uwe F. Mayer (12/96,11/97)
TEST : Iterations/sec. : Old Index : New Index
: : Pentium 90* : AMD K6/233*
--------------------:------------------:-------------:------------
NUMERIC SORT : 1331.2 : 34.14 : 11.21
STRING SORT : 106.8 : 47.72 : 7.39
BITFIELD : 2.529e+08 : 43.38 : 9.06
FP EMULATION : 90.964 : 43.65 : 10.07
FOURIER : 16948 : 19.27 : 10.83
ASSIGNMENT : 21.109 : 80.32 : 20.83
IDEA : 2442.1 : 37.35 : 11.09
HUFFMAN : 1405.9 : 38.99 : 12.45
NEURAL NET : 25.11 : 40.34 : 16.97
LU DECOMPOSITION : 929.52 : 48.15 : 34.77
==========================ORIGINAL BYTEMARK RESULTS==========================
INTEGER INDEX : 44.776
FLOATING-POINT INDEX: 33.452
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0
==============================LINUX DATA BELOW===============================
CPU : AuthenticAMD AMD Athlon(TM) XP 2600+ 1917MHz
L2 Cache : 512 KB
OS : Linux 2.6.10-mm2
C compiler : 3.4.3
libc :
MEMORY INDEX : 11.172
INTEGER INDEX : 11.174
FLOATING-POINT INDEX: 18.554
Baseline (LINUX) : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38
* Trademarks are property of their respective holder. |
|
|
Back to top |
|
|
c07 Veteran
Joined: 25 Oct 2002 Posts: 1091
|
Posted: Fri Feb 04, 2005 2:45 pm Post subject: |
|
|
hds wrote: | err, dann emerge doch bin ebuilds, wenn dich die compile time stoert. |
Stört mich ja gar nicht grundsätzlich. Deswegen kann man trotzdem versuchen, sie zu verbessern.
hds wrote: | man compiled doch eh nur selbst, wenn man im endeffekt die laufzeit optimizen will - ansonsten faehrt man SuSE |
Die Frage ist, ob sich Gentoo lohnt, wenn man nur die Laufzeit vorgefertigter Pakete minimieren will. SuSE hat andere Möglichkeiten der Optimierung, die nicht unbedingt schlechter sind als die Anpassung an eine bestimmte Architektur. Insbesondere Profiling kann u.U. sehr viel bringen, und das fällt bei selber gebautem Code fast aus.
Wobei gcc 3.4.x eine der wenigen Ausnahmen ist, die auch unter Gentoo Profiling nutzen, offenbar mit unterschiedlichem Erfolg. Als Referenz wird dabei aber nur die libgcc gebaut, die immer nur -O2 (ohne -march oder sonstwas) benutzt.
Selber compilieren hat nur dann wirklich Sinn, wenn es Spaß macht oder (auch) andere Gründe dafür sprechen (insbesondere Aktualität). Außerdem kann man mit gcc auch eigenen Code bauen, den es nirgends als Binary gibt. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|