Open64

Open64
Basisdaten

Entwickler Open64 OSG und Beitragende
Erscheinungsjahr 2002
Aktuelle Version 5.0
(10. November 2011)
Betriebssystem Unix, GNU/Linux
Kategorie Compiler
Lizenz GPL (Freie Software)
deutschsprachig nein
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[1] und von Nvidia zur Optimierung der CUDA-C-Umgebung eingesetzt.[2]

Einzelnachweise

  1. Open64 on MIPS: porting and enhancing Open64 for Loongson II (PDF-Datei; 312 kB)
  2. NVIDIA’s Experience with Open64 (Word-Datei, 81 kB; DOC-Datei)

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.