Intelligenter Compiler GCC

Intelligenter Compiler GCC

Der Intelligente Compiler GCC soll eben mit der GCC–Erweiterung in der Lage sein, passende Optionen für die genutzten Systeme auszuwählen und bietet somit die Möglichkeit die Zeit, welche die Entwickler für ihre Software in die Performance Optimierung stecken müssen, stark zu reduzieren. Dies behauptet zumindest International Business Machines (kurz auch IBM genannt), welche ebenfalls an dem Milepost Forschungsprojekt der EU beteiligt sind.

Die Online Plattform C-Tuning, welche zur Verbesserung der Software als Entwicklerprojekt dient, ist laut IBM im Laufe des Milepost-Projektes entstanden. Entwickler erhalten hier die benannte Software, sammeln interessante Optimierungsfälle und erhalten Dokumentationen der Eilpost GCC. Das Forschungsprojekt veröffentlichte im Juni 2009 eine Sammlung von Entwicklertools wie z.B. zum Benchmark.

Im Internet steht aktuell die Version 4.4 der Milepost Version GNU Compiler Kollektion zum Download zur Verfügung. Diese beinhaltet einen lernfähigen Compiler GCC-ICI sowie ein Entwicklerprojekt zum Tunen von Software. Das Projekt Milepost mit der Version 4.4 ist ein gefördertes Projekt der EU.

Vor rund einem Jahr gelang hierbei die erste nachweisbare Leistungssteigerung für die neue Software durch die Eilpost Erweiterung. An dem Eilpost Projekt, welches mit rund 1,7 Millionen von der Europäischen Union gefördert wurde, arbeiten das Forschungsinstitut INRIA (Institut National de Recherche en Informatique et en Automatiqua), die INRIA Firmenausgründung Caps, die Unsiversität Edingburgh, IBM und die Multimedia-IT-Firma Arc zusammen.

Selbst Objektdateien, welche auch OBJ Dateien genannt werden, werden vom Intelligenten Compiler GCC im Common Objekt File Format (kurz gesagt COFF) erzeugt. Jede Quelldatei wird von den Compiler Programmen kompiliert, soweit dies nicht anders angegeben wurde. Immer eine Quelldatei pro Kompiliervorgang. Die Intelligenten Compiler GCC berücksichtigen auch die CL Umgebungsvariablen in der Befehlszeile (command Line CL) und allen angegebenen Antwortdateien.

Im Prinzip analysiert der Intelligente Compiler GCC die Initialisierungsabhängigkeiten des Quellcodes und generiert die korrekte Reihenfolge der Initialisierung.