Compiler: Rust-Entwicklern ist LLVM zu langsam

Der LLVM-Gründer bedankt sich für die "wertvollen" Arbeiten. Ein Jetbrains-Entwickler demonstriert bereits einen verbesserten Umgang damit.

Artikel veröffentlicht am ,
LLVM hat Leistungsprobleme.
LLVM hat Leistungsprobleme. (Bild: aka CJ/Flickr.com/CC0 1.0)

Seit einigen Wochen gibt es verschiedene Hinweise darauf, dass sich mit der aktuellen Version 10 des Compiler-Projekts LLVM die Zeit zum Kompilieren von Rust deutlich verschlechtert hat. Der bei den Open-Source-Spezialisten von Red Hat angestellte Entwickler Josh Stone hat dies nun erneut auf der LLVM-Mailing-Liste detailliert dargestellt.

Den Untersuchungen von Stone zufolge verschlechtere sich die Leistung zwischen LLVM 9 und LLVM 10 um rund fünf Prozent und zwischen der aktuellen stabilen Version 10 sowie dem aktuellen Entwicklungszweig um weitere rund fünf Prozent. Aus einem von der Rust-Community gepflegten Performance-Dashboard ergeben sich je nach kompiliertem Projekt ähnlich starke Verschlechterungen, die bei zehn Prozent oder mehr liegen können.

Der Gründer des LLVM-Projekts Chris Lattner dankt in einer E-Mail im Namen der Community den Rust-Entwicklern für ihre systematischen Arbeiten, vor allem für ihren Einsatz dafür, "dass die Leistung der LLVM-Kompilierungszeit im Laufe der Zeit akzeptabel bleibt." Die an den Tag gelegte Sorgfalt der Rust-Entwickler sei "unglaublich wertvoll" für die Arbeiten an LLVM.

Unter Bezugnahme auf die Diskussionen und Arbeiten der Rust-Entwickler beschreibt der Entwickler Nikita Popov in seinem Blog eine Vielzahl möglicher kleinerer Leistungsverbesserungen für LLVM. Popov arbeitet bei Jetbrains, das eine Vielzahl verschiedener Entwicklerwerkzeuge herstellt.

Popov führt das Grundproblem darauf zurück, dass LLVM die Verschlechterung der Kompilierungszeit nicht systematisch erfasst. In Anlehnung an den Performance-Tracker von Rust hat Popov ein ähnliches Projekt für LLVM selbst erstellt, das nun den Einfluss bestimmter Code-Beiträge auf die Kompilierungszeit überprüft. Popov verweist auf die damit bereits gefundenen größeren Leistungseinbußen, die als Fehler behandelt und behoben wurden, und hofft auf eine positive Entwicklung für das kommende LLVM 11.

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
Reddit
Stundenlanger Ausfall, weil niemand mehr den Code kennt

Die Analyse eines schwerwiegenden Ausfalls bei Reddit zeigt, wie kritisch institutionelles Wissen sein kann.

Reddit: Stundenlanger Ausfall, weil niemand mehr den Code kennt
Artikel
  1. Entlassungen bei Techfirmen: Weniger Manager sind besser
    Entlassungen bei Techfirmen
    Weniger Manager sind besser

    Entlassungen sind schlimm, aber die Begründungen dafür etwa von Meta kann ich zum Teil verstehen. Auch die Forderungen nach Rückkehr ins Büro finde ich richtig.
    Ein IMHO von Brandur Leach

  2. Huawei: Innenministerium wird keine US-Sanktionen überprüfen
    Huawei
    Innenministerium wird keine US-Sanktionen überprüfen

    Das Bundesinnenministerium kann weder US-Sanktionen gegen Huawei in Deutschland einfordern, noch interne Verträge der Telekom einsehen.

  3. Parkvision: Parkplatz-KI überwacht Laufwege und bestraft Fremdeinkäufer
    Parkvision
    Parkplatz-KI überwacht Laufwege und bestraft Fremdeinkäufer

    Wer auf einem kameraüberwachten Parkplatz eines Gelsenkirchener Supermarkts parkt, darf nur dort einkaufen. Wer zusätzlich woanders hingeht, zahlt Strafe.

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]
    •  /