Zum Inhalt springen

Open64

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 10. Dezember 2025 um 11:23 Uhr durch imported>SchlurcherBot (Bot: http → https).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Open64

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Entwickler Open64 OSG und Beitragende
Erscheinungsjahr 2002
Aktuelle Version 5.0
(10. November 2011)
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Unix, GNU/Linux
Programmier­sprache Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Kategorie Compiler
Lizenz GPL (Freie Software)
deutschsprachig ja
www.open64.net (archiviert)

Open64 ist ein Compiler für die Programmiersprachen C++, C und Fortran 77/95, der aus dem MIPSPro-Compiler des Computer-Herstellers Silicon Graphics entstanden ist. Da der Compiler quelloffen verfügbar ist, wurde er oft zur Implementierung und Verbesserung von Optimierungsstrategien eingesetzt, so dass er sich im Laufe der Zeit zu einem stark optimierenden Compiler entwickelte.

Struktur und Fähigkeiten

Der Compiler besitzt 5 hierarchisch angeordnete Ebenen für die Zwischenrepräsentation des Quellcodes, in denen jeweils verschiedene Optimierungsverfahren zum Einsatz kommen und auf denen die jeweiligen Frontends (GCC für C++ und C und CraySoft für Fortran) aufsetzen. Diese Zwischenschicht trägt den Namen WHIRL. Durch diese Basis ist es möglich, den Quellcode mittels dead code elimination, interprozeduraler Analyse und einem globalen Optimierer zu optimieren. Um optimale Leistung auf Mehrprozessorsystemen zu ermöglichen, ist zudem OpenMP integraler Bestandteil des Pakets.

Der Open64-Compiler ist in der Lage, Maschinencode für x86, IA-64, MIPS und ARM zu erzeugen.

Geschichte

Die erste Abspaltung des MIPSPro-Compilers, die später die Grundlage für Open64 bildete, war der Open Research Compiler (ORC), dessen Entwicklung vom Prozessorhersteller Intel bezahlt wurde, um einen optimierenden Compiler für die Itanium-Plattform zu schaffen. Da diese Prozessorarchitektur durch den radikalen Verzicht auf Code-optimierende Hardware-Einheiten stark auf die Optimierungsfähigkeiten des Compilers angewiesen war, lag der Schwerpunkt der Entwicklung in diesem Bereich. Die Förderung dieses Zweigs durch Intel endete 2003. Eine andere wichtige Abspaltung war die PathScale Compiler Suite, die allerdings inzwischen wieder mit dem mittlerweile von HP und der University of Delaware betreuten Hauptzweig des Open64-Compilers vereinigt wurde. Heute gibt es zusätzlich zur offiziellen Codebasis noch eine sehr aktive Abspaltung, welche vom Chiphersteller AMD finanziert wird. Dort liegt das Hauptaugenmerk auf neuen Optimierungen für die Opteron-Modellreihe des Herstellers.

Außerdem wurde der Compiler auf die Loongson-Plattform portiert<ref>Open64 on MIPS: porting and enhancing Open64 for Loongson II (PDF-Datei; 312 kB)</ref> und von Nvidia zur Optimierung der CUDA-C-Umgebung eingesetzt.<ref>NVIDIA’s Experience with Open64 (Word-Datei, 81 kB; DOC-Datei)</ref>

Einzelnachweise

<references />

Weblinks