Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Alternativen zum aktuellen gcc.
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page Previous  1, 2, 3, 4, 5  Next  
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum
View previous topic :: View next topic  
Author Message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Sat Dec 05, 2015 8:46 am    Post subject: Reply with quote

Neue Erkenntnisse: Ich bin inzwischen auf gcc:5 umgestiegen. Und Clang bringt eigentlich gar nichts. Kompilierte so zwischen 5 und 10% schneller, der erzeugte Code ist langsamer, manchmal etwas kleiner aber oft auch deutlich größer als beim gcc.

Nun aber: Habe mal wieder den firefox ausprobiert. Ist bei mir ständig gecrasht. Sowohl unter KDE als auch Gnome. Jedenfalls, wenn ich ihn mit dem gcc kompiliert habe. Mit dem Clang kein Problem. Dieses Problem wurde dann aber auch durch ein Rebuild des Systems behoben.

Ok, unter KDE crasht bei mir der Dolpin auch ständig. Sowohl mit gcc:4 als auch gcc:5. Und jetzt habe ich ihn mal mit dem Clang kompiliert. Bislang noch kein Absturz.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Sun Dec 06, 2015 8:56 am    Post subject: Reply with quote

firefox[system-cairo] stürzt bekanntermaßen ab - ev. nur mit gcc:5?
Das liegt anscheinend an irgendwelchen Patches, die Firefox dem gebündelten cairo verpasst hat; niemand weiß Genaues nix.

Die Bugfix-Release gcc-5.3.0 ist inzwischen offiziell draußen, aber anscheinend noch nicht in Gentoo. Vielleicht bringt die auch etwas.
Back to top
View user's profile Send private message
schmidicom
Veteran
Veteran


Joined: 09 Mar 2006
Posts: 1924
Location: Schweiz

PostPosted: Sun Dec 06, 2015 9:07 am    Post subject: Reply with quote

mv wrote:
Das liegt anscheinend an irgendwelchen Patches, die Firefox dem gebündelten cairo verpasst hat; niemand weiß Genaues nix.

Und sowas von einer Organisation welche sich angeblich so sehr für OpenSource interessiert.
_________________
Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Sun Dec 06, 2015 10:18 am    Post subject: Reply with quote

Also, irgendwas muss sich wohl beim Firefox geändert haben. Aktuell läuft er ohne Probleme. Ich nutze aber lieber Chrome, deshalb kann ich da nichts mehr zu sagen.

Das Dolphin mit Clang besser funktionier nehme ich zurück. Aktuell stürzt er auch mit gcc übersetzt nicht mehr ab. Man braucht wohl heftige Rebuilds. Und der gcc-5.3 wird gerade geladen.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2284
Location: Adendorf, Germany

PostPosted: Mon Dec 07, 2015 2:13 pm    Post subject: Reply with quote

mv wrote:
firefox[system-cairo] stürzt bekanntermaßen ab - ev. nur mit gcc:5?
Oh? Dann baue ich den mal neu... Abstürze sind zwar sehr selten, habe aber alle system-* USE Flags aktiviert und es ist nervig. Vor Allem sind die Abstürze absolut garnicht reproduzierbar.
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2284
Location: Adendorf, Germany

PostPosted: Mon Dec 07, 2015 2:33 pm    Post subject: Reply with quote

Klaus Meier wrote:
Und der gcc-5.3 wird gerade geladen.
Ist das wirklich nur ein Bugfix-release oder muss wieder das gesamte System neu gebaut werden?
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Dec 07, 2015 2:38 pm    Post subject: Reply with quote

Yamakuzure wrote:
Vor Allem sind die Abstürze absolut garnicht reproduzierbar.

Ja, genau: Irgendwann - selbst wenn man gar nichts macht - kommt auf einmal ein segfault.
Auf Klaus Maiers Bemerkung hni habe ich jetzt allerdings firefox-42.0-r3 mit gcc-5.3.0 neu gebaut, und derzeit trat das Problem nicht mehr auf - ist allerdings noch nicht allzu lange getestet. Es gibt jetzt auch eine neue USE-dependency cairo[xcb] (mein vorheriges cairo war mit -xcb gebaut), aber das alleine ist sicher nicht der Grund: Ich hatte zunächst emerge -O firefox ausgeführt, ohne cairo neu zu bauen, und auch da schien das Problem schon nicht mehr zu bestehen.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Dec 07, 2015 2:43 pm    Post subject: Reply with quote

Yamakuzure wrote:
Klaus Meier wrote:
Und der gcc-5.3 wird gerade geladen.
Ist das wirklich nur ein Bugfix-release oder muss wieder das gesamte System neu gebaut werden?

Nur Bugfix. Das ist das neue gcc-Versionsschema: Das entspricht früher einem Umstieg von 4.x.öbbes auf 4.x.öbbes+1. Der nächste Compiler mit ev. ABI/API-Änderungen wird gcc-6.* sein.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2284
Location: Adendorf, Germany

PostPosted: Mon Dec 07, 2015 3:36 pm    Post subject: Reply with quote

Vielen Dank!

Nach Jahren (!!!) habe ich mir mal die Mühe gemacht, https://wiki.gentoo.org/wiki/Upgrading_GCC zu lesen, und das ist ja wirklich nett: Nur libtool muss neu gebaut werden, sonst nix. :)
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Tue Dec 08, 2015 11:30 am    Post subject: Reply with quote

gcc-5.3 ist nur ein Bugfix von 5.2. Und das mit dem System neu bauen ist ja sehr selten. Trat halt beim Wechsel von 4 zu 5 auf. Es ist nicht gesagt, dass beim Wechsel von 5 zu 6 das Gleiche noch mal passiert. Aktuell läuft der Firefox bei mir wieder bombenstabil.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Tue Dec 22, 2015 4:31 pm    Post subject: Reply with quote

Eventuell wird der Clang doch noch interessant. Nachdem ich folgendes gelesen habe:
http://www.phoronix.com/scan.php?page=article&item=intel-sklxeon-compilers&num=1
habe ich dann etwas gesucht und bin auf folgendes gestoßen:
https://www.reddit.com/r/Gentoo/comments/36hfu5/any_word_on_portage_compatibility_with_llvmclang/

Da geht es ja auch genau darum, was mich damals bewogen hat, meine Tests einzustellen: Es gibt Anwendungen, die lassen sich übersetzen, stürzen dann aber ab. Und da ist der Zusammenhang ja nicht immer offensichtlich. Und aktuell habe ich bei mir nicht so große Unterschiede beim Kompilieren wie in dem Artikel. Eher so 10% besser. Und die Performance ist durch die Bank schlechter. Aber da gibt es jetzt ein paar aktuelle Hinweise, was so alles zur Laufzeit nicht funktioniert. Und wenn ich mir jetzt so die Werte vom Clang 3.8 anschaue, dann sollte man sich das doch mal anschauen.

Edit: Erste Versuche sahen gar nicht so schlecht aus, aber Clang als Systemkompiler funktioniert zusammen mit dem gcc-5 absolut nicht. Gibt nur Linkfehler.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Wed Jan 06, 2016 4:25 pm    Post subject: Reply with quote

Zu meinem Problem habe ich etwas gefunden: https://bugs.launchpad.net/ubuntu/+source/llvm-toolchain-3.6/+bug/1488254
Und nun ist ja llvm 3.7.1 raus, welcher nun nicht mehr kompatibel mit 3.7.0 ist. http://www.phoronix.com/scan.php?page=news_item&px=LLVM-3.7.1-Released

Weiß jemand etwas, wie es da mit der Kompatibilität in Bezug auf denn gcc-5 aussieht?
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Fri Jan 08, 2016 8:02 am    Post subject: Reply with quote

Klaus Meier wrote:
Weiß jemand etwas, wie es da mit der Kompatibilität in Bezug auf denn gcc-5 aussieht?

Bezüglich C++ gaaaanz düster...
https://llvm.org/bugs/show_bug.cgi?id=23529
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Sat Jan 09, 2016 1:00 pm    Post subject: Reply with quote

Nun ja, so trübe sehe ich das nicht. Das Problem ist ja erkannt und es wird an einer Lösung gearbeitet.

Aber es macht mir den gcc doch nicht gerade sympathischer. Der gcc-5 ist ja nun für Testing der gegebene Compiler. Und es ist ja nicht nur so, dass es Probleme mit Clang gibt, die gleiche Situation ist ja auch in Bezug auf den gcc-4 gegeben.

Das ist wirklich eine Situation, wo man verstehen kann, warum einige vom gcc zu clang wechseln.

Wie gesagt, ich hatte da einiges mit clang-3.7.0 als Compiler übersetzt. Und die Binaries waren immer kleiner und die Performance mindestens gleichwertig. Aber dann kamen die Probleme beim Linken.
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2284
Location: Adendorf, Germany

PostPosted: Thu Jan 14, 2016 8:32 am    Post subject: Reply with quote

Wenn ich die Beschreibung richtig verstehe, dann ist "abi_tag" genau dafür da, für mehr Kompatibilität zu sorgen, wenn es ABI-Änderungen gibt. Man kann dann Funktionen, Variablen und Klassendefinitionen belassen, und per abi_tag einfach neue Varianten hinzufügen, so dass das eigene Produkt zur vorherigen ABI-Version kompatibel bleibt.
Dass andere Compiler dann ersteinmal Unterstützung hierfür einbauen müssen, ist ja klar.
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Thu Jan 14, 2016 9:35 am    Post subject: Reply with quote

Yamakuzure wrote:
Wenn ich die Beschreibung richtig verstehe, dann ist "abi_tag" genau dafür da, für mehr Kompatibilität zu sorgen, wenn es ABI-Änderungen gibt. Man kann dann Funktionen, Variablen und Klassendefinitionen belassen, und per abi_tag einfach neue Varianten hinzufügen, so dass das eigene Produkt zur vorherigen ABI-Version kompatibel bleibt.
Dass andere Compiler dann ersteinmal Unterstützung hierfür einbauen müssen, ist ja klar.

Das Problem bei der Art der Implementation ist aber, dass damit ein Mischbetrieb gcc-4 und gcc-5 genauso verhindert wird. Mit anderen Worten, wenn man einmal das Update zum gcc-5 gemacht hat, was ja auch mit genug Stress verbunden ist und welcher inzwischen bei Testing aktuell ist, dann ist gar nichts anderes als der gcc-5 mehr möglich.

Ein System zu schaffen, was für mehr Kompatibilität sorgen soll, welches zur Folge hat, dass man zu allem anderen inkompatibel ist, ist für mich eine suboptimale Lösung.

Ich werde mal ein Testsystem mit maskiertem gcc-5 aufsetzen und sehen, was dann passiert. So langsam wird der gcc für mich wie der IE6 und llvm wie Firefox :roll: :roll: :roll:
Es gibt nun mal Standards und an die sollte man sich halten. Ok, dass kann man dem gcc nicht vorwerfen. Aber zum Standard inkompatible Erweiterungen einzubauen, das ist eigentlich die Spezialität von Microsoft.

Um das mal ganz direkt aus der Sicht des Anwenders (nicht des Entwicklers) zu sagen: Der gcc-5 bringt mir keine Vorteile. Der erzeugte Code ist, von einigen Ausnahmen abgesehen, weder schneller noch kleiner als beim gcc-4. Für die Kompilierzeiten gilt das Gleiche. Das Teil macht nur Stress.

Natürlich kann man das als Entwickler anders sehen und ich kann das ja auch nachvollziehen. Aber die Umsetzung ist genauso wie Microsoft es damals mit dem IE gemacht. Von oben herab mit der Arroganz des Monopolisten. Und das ist für mich die Motivation, davon unabhängig zu werden.
Back to top
View user's profile Send private message
schmidicom
Veteran
Veteran


Joined: 09 Mar 2006
Posts: 1924
Location: Schweiz

PostPosted: Thu Jan 14, 2016 10:31 am    Post subject: Reply with quote

@Klaus Meier
Manchmal muss man eben einfach mit der Kompatibilität brechen und so häufig kommt das beim GCC ja nun wirklich nicht vor, oder?
Auch vermute ich das möglichen Optimierungen welche eventuell seit GCC 5.0 existieren sich erst im Userland niederschlagen werden wenn die Devs der jeweiligen Programme diese Möglichkeiten auch anfangen zu nutzen.
_________________
Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW


Last edited by schmidicom on Fri Jan 15, 2016 5:54 pm; edited 1 time in total
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Fri Jan 15, 2016 5:51 pm    Post subject: Reply with quote

schmidicom wrote:
wenn die Devs der jeweiligen Programme diese Möglichkeiten auch anfangen zu nutzen.

"Optimierungen" pauschal benötigen keine Kooperation des Programms - die passieren automatisch beim Übersetzen.
Vielleicht meinst Du spezielle neue Features, die Optimierungsmöglichkeitne bieten. Gibt es da etwas Wichiges beim gcc-5?
Back to top
View user's profile Send private message
schmidicom
Veteran
Veteran


Joined: 09 Mar 2006
Posts: 1924
Location: Schweiz

PostPosted: Fri Jan 15, 2016 5:56 pm    Post subject: Reply with quote

mv wrote:
schmidicom wrote:
wenn die Devs der jeweiligen Programme diese Möglichkeiten auch anfangen zu nutzen.

"Optimierungen" pauschal benötigen keine Kooperation des Programms - die passieren automatisch beim Übersetzen.
Vielleicht meinst Du spezielle neue Features, die Optimierungsmöglichkeitne bieten. Gibt es da etwas Wichiges beim gcc-5?

Ich habe mich etwas unglücklich ausgedrückt, das mit den Optimierungen ist eigentlich nur eine Vermutung den grundlos werden die Devs vom GCC sicher nicht mit der Kompatibilität gebrochen haben.
_________________
Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Fri Jan 15, 2016 5:58 pm    Post subject: Reply with quote

Klaus Meier wrote:
Ein System zu schaffen, was für mehr Kompatibilität sorgen soll, welches zur Folge hat, dass man zu allem anderen inkompatibel ist, ist für mich eine suboptimale Lösung.

In 2-3 Jahren wirst Du das anders sehen: Das macht zwar jetzt einmalig beim Upgrade Bauchschmerzen, sorgt aber dafür, dass man den Krampf, den man jetzt beim gcc-5-Upgrade hatte und der in einigen Grenzfällen auch schon bei einigen gcc-4-Versionen auftrat (wir hatten halt nur Glück, dass die ABI bislang keine wesntlichen Upgrades erfahren hat), in Zukunft nicht mehr auftretten wird.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2908
Location: Bozen

PostPosted: Sat Jan 16, 2016 2:19 pm    Post subject: Reply with quote

gcc 4.9.3 in Kombination mit clang 3.7.1 funktioniert auch nicht. Auch wenn in dem von mir weiter oben von mir verlinkten Artikel jemand schreibt, dass er den clang als Systemcompiler mit einer Ausnahmeliste einsetzt, nein, bei mir funktioniert das nicht.

Kann man wirklich zusammenfassen: Aktuell gibt es keine Alternative zum gcc. Na dann bin ich mal gespannt, ob das in drei Jahren anders aussieht.
Back to top
View user's profile Send private message
schmidicom
Veteran
Veteran


Joined: 09 Mar 2006
Posts: 1924
Location: Schweiz

PostPosted: Thu Jan 28, 2016 2:14 pm    Post subject: Reply with quote

Weil es gerade so schön dazu passt: GCC6 unterstützt AMDs HSA
Irgendwie finde ich es ja schon witzig, GCC 5 ist noch nicht einmal bei allen Distributionen angekommen und die reden schon von GCC 6. ;)
Und im Bezug auf dieses neue Flag will ich mal hoffen das Programme welche damit gebaut wurden auch noch auf einem System ohne HSA laufen denn sonst könnte die Verteilung von vorkompilierten Paketen "interessant" werden.
_________________
Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2284
Location: Adendorf, Germany

PostPosted: Mon Feb 01, 2016 10:13 am    Post subject: Reply with quote

Also ich glaube nicht, dass "--with-hsa-runtime" irgendetwas mit der Verteilung vorkompilierter Pakete zu tun hat. Es kommt ja auch niemand auf die Idee, vorkompilierte Pakete mit "-march=native" zu kompilieren.

Interessant ist so ein Schalter ja nur für User, die a) so ein System haben, und b) sich ihre Pakete selber bauen.
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Feb 01, 2016 10:25 am    Post subject: Reply with quote

Yamakuzure wrote:
Interessant ist so ein Schalter ja nur für User, die a) so ein System haben, und b) sich ihre Pakete selber bauen.

Nicht unbedingt. Wenn das wirklich so wahnsinnig effizient ist, könnten Binärdistributionen dafür eine neue Architektur (neben x86, amd64) aufmachen.
Wenn sie es nicht tun, kann es sein, dass source-basierte Distributionen wie Gentoo mal wieder einen Ansturm der "OMG, I'm so fast --break-everything"-Fraktion erleben.
Back to top
View user's profile Send private message
py-ro
Veteran
Veteran


Joined: 24 Sep 2002
Posts: 1734
Location: Velbert

PostPosted: Mon Feb 01, 2016 11:36 am    Post subject: Reply with quote

Der Switch funktioniert auf allen Systemen, im Zweifel werden die Binarys nur nutzlos größer. Das ist ja das schöne am HSA, die Binarys sind so angelegt, dass Sie "überall" laufen können.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Diskussionsforum All times are GMT
Goto page Previous  1, 2, 3, 4, 5  Next
Page 4 of 5

 
Jump to:  
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