Abo
  • Services:

GCC 4.0 macht Programme und deren Entwicklung schneller

GCC nun mit automatischer Vektorisierung für SSE, SSE2 und Altivec

Ein Jahr nach der Veröffentlichung der Version 3.4 gab das GCC-Team nun die Version 4.0 frei. Neben der verbesserten internen Darstellungsform (Tree-SSA) kann die neue Version automatisch Schleifen für SSE und SSE2 der x86- und AMD64-Plattform sowie für Altivec auf PowerPC generieren.

Artikel veröffentlicht am ,

Die jetzt freigegebene Version war ursprünglich als 3.5 geplant, wurde jedoch auf Grund der vielen internen Änderungen und Verbesserungen nach 4.0 umbenannt. Die größte Änderung ist die Verwendung von "Static Single Assignment Trees" für die interne Repräsentation des Codes. Dadurch ließen sich viele Optimierungen verbessern und neue implementieren. Unter den neuen Optimierungen ist auch die automatische Vektorisierung von Schleifen, für die Verwendung von SSE, SSE2 oder Altivec. Einen solchen Automatismus, für bisher eher von Hand zu erzeugende Optimierungen, boten zurzeit ausschließlich kommerzielle Compiler aus dem Hause Intel oder IBM.

Stellenmarkt
  1. Bundesinstitut für Risikobewertung, Berlin
  2. abilex GmbH, Berlin

Die Tree-SSA-Darstellung hilft jedoch auch in anderen Bereichen, wie dem Zusammenfassen von Gemeinsamkeiten, dem Eliminieren nicht verwendeter Ausdrücke sowie einigen normalen Optimierungsmethoden von Schleifen.

Auch das Starten von Programmen kann durch die neue GCC-Version beschleunigt werden: "-fvisibility-inlines-hidden" markiert in dem ELF-Bibliotheksformat alle "inline-bare"-Funktionen als nicht sichtbar und entfernt diese so aus der finalen Programmdatei. Bei modernem C++-Code werden so ca. 40 Prozent der Symbole entfernt und Programme bis zu 10 Prozent kleiner - und dadurch natürlich schneller geladen.

Im wissenschaftlichen Bereich lang erwartet, wurde der Ersatz des Fortan-77-Frontends, durch eine überarbeitete Version, die auch Fortan 90 und 95 akzeptiert. Der neue "gfortran" ist derzeit jedoch nicht mehr vollständig Fortan-77-konform, die Entwickler wollen in einer späteren Version aber wieder dafür sorgen.

Das Debuggen von optimiertem Code, in dem Code-Fragmente oft stark von der Reihenfolge in der Quelldatei abweichen, können "location lists" verbessern. Durch diese kann der GNU Debugger auch stark optimierten Code wieder das original Listing zuordnen.

Ebenfalls für Entwickler interessant ist, dass bei Abschalten jeglicher Optimierung mit '-O0' das C++-Frontend jetzt schneller ist als in jeder anderen GCC-Version zuvor. Dies kann den Editier-Compile-Zyklus in der Entwicklungsphase stark verkürzen.

Da, wie in jeder neuen GCC-Version, auch wieder ein paar historische, GCC-eigene Spracherweiterungen entfernt wurden, ist davon auszugehen, dass in dem einen oder anderen historisch gewachsenen Code kleine Änderungen vorzunehmen sind, bis er sich wieder mit dem aktuellen GCC übersetzen lässt. Positiv ist, dass solche Änderungen auch die Kompatibilität mit anderen ANSI-konformen Compilern erhöhen.

Eine Übersicht aller Änderungen ist auf der Projekt-Homepage zu finden, hier steht GCC 4.0 auch zum Download bereit. [von René Rebe]



Anzeige
Spiele-Angebote
  1. 59,99€ mit Vorbesteller-Preisgarantie
  2. (-67%) 19,80€
  3. 59,99€ mit Vorbesteller-Preisgarantie
  4. 31,99€

keine ahnung 12. Jun 2005

also wir haben hier 10 der neuesten mainframes stehen. und an diese i/o raten kommen...


Folgen Sie uns
       


Youtube Music - angeschaut

Wir haben uns das neue Youtube Music angeschaut. Davon gibt es eine kostenlose Version mit Werbeeinblendungen und zwei Abomodelle. Youtube Music Premium ist quasi der Nachfolger von Googles Play Musik. Das Monatsabo für Youtube Music Premium kostet 9,99 Euro.

Youtube Music - angeschaut Video aufrufen
Always Connected PCs im Test: Das kann Windows 10 on Snapdragon
Always Connected PCs im Test
Das kann Windows 10 on Snapdragon

Noch keine Konkurrenz für x86-Notebooks: Die Convertibles mit Snapdragon-Chip und Windows 10 on ARM sind flott, haben LTE integriert und eine extrem lange Akkulaufzeit. Der App- und der Treiber-Support ist im Alltag teils ein Manko, aber nur eins der bisherigen Geräte überzeugt uns.
Ein Test von Marc Sauter und Oliver Nickel

  1. Miix 630 Lenovos ARM-Detachable kostet 1.000 Euro
  2. Qualcomm "Wir entwickeln dediziertes Silizium für Laptops"
  3. Windows 10 on ARM Microsoft plant 64-Bit-Support ab Mai 2018

Disenchantment angeschaut: Fantasy-Kurzweil vom Simpsons-Schöpfer
Disenchantment angeschaut
Fantasy-Kurzweil vom Simpsons-Schöpfer

Mit den Simpsons ist er selbst Kult geworden, und Nachfolger Futurama hat nicht nur Sci-Fi-Nerds mit einem Auge für verschlüsselte Gags im Bildhintergrund begeistert. Bei Netflix folgt nun Matt Groenings Cartoonserie Disenchantment, die uns trotz liebenswerter Hauptfiguren in Märchenkulissen allerdings nicht ganz zu verzaubern weiß.
Eine Rezension von Daniel Pook

  1. Streaming Wachstum beim Pay-TV dank Netflix und Amazon
  2. Videostreaming Netflix soll am Fernseher übersichtlicher werden
  3. Quartalsbericht Netflix verfehlt eigene Prognosen um 1 Million Neukunden

Indiegames-Rundschau: Schiffbruch, Anime und viel Brummbrumm
Indiegames-Rundschau
Schiffbruch, Anime und viel Brummbrumm

Gas geben, den weißen Hai besiegen und endlich die eine verlorene Socke wiederfinden: Die sommerlichen Indiegames bieten für jeden etwas - besonders fürs Spielen zu zweit.
Von Rainer Sigl

  1. Indiegames-Rundschau Spezial Unabhängige Riesen und Ritter für Nintendo Switch
  2. Indiegames-Rundschau Schwerelose Action statt höllischer Qualen
  3. Indiegames-Rundschau Kampfkrieger und Abenteuer in 1001 Nacht

    •  /