PGO: Rust testet Compiler-Optimierung für schnelleren Compiler

Profile Guided Optimization hat bereits den Browsern Chrome und Firefox für Verbesserungen geholfen. Nun könnte Rust folgen.

Artikel veröffentlicht am ,
Der Rust-Compiler wird dank PGO schneller.
Der Rust-Compiler wird dank PGO schneller. (Bild: Mini OzzY, flickr.com/CC-BY-SA 2.0)

Das wohl wichtigste Werkzeug einer Programmiersprache ist deren Compiler. Inzwischen gibt es eine Vielzahl verschiedener Optimierungsstrategien für Software, die der Compiler umsetzt. Da aber auch Compiler selbst kompiliert werden müssen, liegt es nahe, diese Optimierungen auch auf den Compiler anzuwenden. Genau damit hat ein Mitglied des Rust-Compiler-Teams nun experimentiert, wie es im Blog mitteilt, und dabei beeindruckende Ergebnisse erzielt.

Bei dem durchgeführten Tests handelt es sich um die Nutzung der sogenannten Profile Guided Optimization (PGO). Dabei soll im Gegensatz zur bisher üblichen statischen Code-Analyse das echte Verhalten einer Anwendung berücksichtigt werden. Google nutzt dies in Chrome, was den Browser teils deutlich beschleunigt. Auch Browserhersteller Mozilla nutzt die PGO im Firefox und kann die Zeit zum Bauen des Browsers damit deutlich reduzieren.

Auf Grundlage dieser Erkenntnisse folgt die Frage: "Wäre das Gleiche auch für den Rust-Compiler möglich, das heißt, könnten wir die profilgesteuerte Optimierung auf rustc selbst anwenden, um es schneller zu machen?". Wie die Tests nun gezeigt haben, ist die Antwort darauf ein deutliches Ja. So ist es dank PGO gelungen, die Anzahl der genutzten Befehle beim Kompilieren von Rust-Code mit dem optimierten Compiler um rund 5 Prozent zu verringern.

Darüber hinaus liegen die Verbesserungen der tatsächlich zum Kompilieren benötigten Zeit im besten Fall bei rund 15 Prozent, also eine spürbare Beschleunigung insbesondere für große Rust-Projekte. Der Einsatz des PGO-optimierten Compilers lohne sich demnach schon jetzt für interne Projekte, wie dies etwa Mozilla für seine Firefox-Builds macht, heißt es in dem Blog.

Ob das Rust-Projekt jedoch selbst künftig standardmäßig PGO-optimierte Builds des Rust-Compilers erstellt und verteilt, ist derzeit noch offen. Für eine Nutzung im CI-System der Rust-Community ist dies wohl zu viel Aufwand. Möglich wären jedoch PGO-Builds für die Stable- und Beta-Versionen, die deutlich weniger oft erstellt werden. Noch steht eine Entscheidung dazu aber aus.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
A Plague Tale Requiem
Mit den richtigen Tricks schaffen kleine Teams tolle Grafik

GDC 2023 A Plague Tale Requiem sieht spektakulär aus - trotz eines relativ kleinen Teams und mit wenig Budget. Ein Macher erklärt, wie das funktioniert hat.

A Plague Tale Requiem: Mit den richtigen Tricks schaffen kleine Teams tolle Grafik
Artikel
  1. Android: Pebble-Macher planen kleines Android-Smartphone
    Android
    Pebble-Macher planen kleines Android-Smartphone

    Pebble-Gründer Eric Migicovsky wünscht sich ein kleines Smartphone - und scheint auf dem Weg zu sein, ein eigenes Modell zu bauen.

  2. CS GO mit Source 2: Das ist Valves Counter-Strike 2
    CS GO mit Source 2
    Das ist Valves Counter-Strike 2

    Es ist offiziell: Valve stellt Counter-Strike 2 vor. Die Source-2-Engine bringt neues Gameplay und soll klassische Tickraten loswerden.

  3. Zum Tod von Spiros Simitis: The Godfather of Datenschutz
    Zum Tod von Spiros Simitis
    The Godfather of Datenschutz

    Spiros Simitis, Wegbereiter des deutschen und europäischen Datenschutzes, ist gestorben. Was hätte er wohl zu den aktuellen Plänen gesagt, gigantische Mengen an Patientendaten der Wissenschaft zur Verfügung zu stellen?
    Ein Nachruf von Christiane Schulzki-Haddouti

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Ryzen 9 7900X3D 619€ • Crucial SSD 2TB (PS5) 158€ • Neu: Amazon Smart TVs ab 189€ • Nur bis 24.03.: 38GB Allnet-Flat 12,99€ • MindStar: Ryzen 9 5900X 319€ • Nintendo Switch inkl. Spiel & Goodie 288€ • NBB Black Weeks: Rabatte bis 60% • PS5 + Spiel 569€ • LG OLED TV -57% [Werbung]
    •  /