Mit gcc erstellte Programme sollen schneller werden

6. Oktober 2009, 11:41
posten

Link-Time-Optimierungen in den Hauptentwicklungszweig aufgenommen - Soll spürbare Beschleunigung der Anwendungen bringen

Einen nicht zu unterschätzenden Einfluss auf die Performance einer Anwendung haben die zur Erstellung der Binaries verwendeten Compiler-Tools. Mit einer neuen Entwicklung soll nun die zentrale Open-Source-Lösung in diesem Bereich, die GNU Compiler Collection (gcc) eine erhebliche Beschleunigung erfahren.

Integration

So verkündet der Google-Angestellte Diego Novillo auf der Entwicklungs-Mailing-Liste des Projekts, dass die "Link Time Optimizations" (LTOs) in den Hauptentwicklungszweig aufgenommen wurden. Diese sollen künftig zwischen dem Erstellen der Objekt-Files und der eigentlichen Verlinkung zusätzliche Optimierungen vornehmen, dazu greift man auf GIMPLE zurück, das bereits mit der Version 4.0 in die gcc aufgenommen wurde.

Nutzung

Voraussetzung zur Nutzung der LTOs ist - neben der Verwendung einer damit ausgestatteten gcc - das Vorhandensein der libelf in der Version 0.8.12, außerdem muss noch die Compiler-Flag -flto manuell angegeben werden. Dies wohl auch deswegen, da die Link-Time-Optimierungen derzeit noch nicht vollständig ausgereift sind.

Abwarten

Zwar ergeben sie in einigen Bereichen massive Verbesserungen, in anderen Fällen kann es aber sogar dazu kommen, dass die resultierenden Programme langsamer laufen. Eine Problematik, die man laut Novillo aber noch mit weiteren Optimierungen in der Interprozedualen Analyse ausräumen möchte. (apo, derStandard.at, 06.10.09)

Share if you care.