LLVM: Google will mit MLIR den Compilerbau vereinfachen

Mehrere Google-Forscher überlegen in einer Abhandlung, wie sich der Bau von Intermediate Representations (IR) für domänenspezifische Programmiersprachen vereinfachen lässt. Das könnte große Auswirkungen auf den Compilerbau von LLVM haben.

Artikel veröffentlicht am , Kristian Kißling/Linux Magazin/
Das LLVM-Maskottchen ist ein Drache.
Das LLVM-Maskottchen ist ein Drache. (Bild: Orangeaurochs, flickr.com/CC-BY 2.0)

Der amerikanische Informatiker Chris Lattner ist vor allem als Gründer des Compiler-Projekts LLVM bekannt. Gemeinsam mit weiteren Forschern, die fast ausschließlich Google-Mitarbeiter sind, hat Lattner ein Paper zur Compiler-IR der Zukunft veröffentlicht. Die Untersuchung trägt den Titel MLIR: A Compiler Infrastructure for the End of Moore's Law und ist auf Arxiv.org verfügbar. Ziel des neuen Ansatzes ist es, eine wiederverwendbare und erweiterbare Intermediate Representation (IR) für Compiler-Infrastruktur zu bauen.

Flexiblere IR gesucht

Stellenmarkt
  1. Firewall Security Architekt (m/w/d)
    Radeberger Gruppe KG, Frankfurt
  2. Software Ingenieur*in (d/m/w) Equipment Integration
    OSRAM Opto Semiconductors Gesellschaft mit beschränkter Haftung, Regensburg
Detailsuche

Der Anstoß für die Untersuchung ist dabei leicht nachvollziehbar. Zwar sei die LLVM IR bereits ein wertvoller Ansatz, der Sprachen wie C, C++ und Java abdecke, schreiben die Forscher. Allerdings lassen sich ihnen zufolge viele sprachspezifische Eigenheiten mit der LLVM IR dennoch nur schlecht abbilden. Daher erstellen die Entwickler von Sprachen wie Swift, Rust oder Fortran gern eigene IRs, um sprach- und bibliothekenspezifische Probleme zu modellieren. Der Aufbau solcher IRs benötige aber viel Zeit und Ressourcen und die Umsetzung habe am Ende oft nicht die optimale Qualität, weil das keine Priorität besitze, heißt es in dem Paper. MLIR ist also auch ein Ansatz, dieses Problem in den Griff zu bekommen.

MLIR soll Software- und Hardware-Fragmentierung adressieren und die Kosten für den Bau eines domänenspezifischen Compilers signifikant senken. Dafür will MLIR den Aufwand für das Design und die Implementierung von Code-Generatoren, Übersetzern und Optimierern senken. Das soll auf verschiedenen Abstraktionsebenen passieren, über verschiedene Anwendungsdomänen, Hardware-Plattformen und Laufzeitumgebungen hinweg. Das Paper diskutiert dabei nicht nur die Compiler-Infrastruktur selbst, sondern will auch als Denkanstoß für die zukünftige Arbeit an Compilern dienen. Daneben soll es auch in der Lehre Platz finden.

Konkret soll es künftig mit wenig Aufwand möglich werden, Abstraktionsebenen einzuführen. Das will MLIR unter anderem damit erreichen, dass es SSA-basierte (Static Single Assignment) IR-Datenstrukturen standardisiert, ein deklaratives System anbietet, um IR-Dialekte zu definieren, und eine breite Auswahl an üblicher Infrastruktur anbietet wie etwa Dokumentation, Parsing- und Printing-Logik, Location Tracking und so weiter. Weitere Details zu den Plänen finden sich in dem Paper.

Golem Akademie
  1. Netzwerktechnik Kompaktkurs: virtueller Fünf-Tage-Workshop
    17.–21. Januar 2022, virtuell
  2. Apache Kafka Grundlagen: virtueller Zwei-Tage-Workshop
    21.–22. März 2022, Virtuell
Weitere IT-Trainings

Das LLVM-Projekt selbst pflegt eine eigene Webseite zu der MLIR-Idee mit weiteren Ressourcen für interessierte Entwickler. Dort werden Hintergründe erläutert und auch bereits einige Implementierungen der Idee vorgestellt. Dazu gehören etwa das Machine-Learning-Framework Tensorflow sowie einige wenige weitere Projekte aus diesem IT-Bereich. Auch der neun Fortran-Compiler des LLVM-Projekts, Flang, nutzt demnach bereits eine IR, die an MLIR angelehnt ist.

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
Bundesservice Telekommunikation  
Ist eine scheinexistente Behörde für Wikipedia relevant?

Die IT-Sicherheitsexpertin Lilith Wittmann hat eine dubiose Bundesbehörde ohne Budget entdeckt. Reicht das für einen Wikipedia-Artikel?

Bundesservice Telekommunikation: Ist eine scheinexistente Behörde für Wikipedia relevant?
Artikel
  1. Elektroauto: VW e-Up ab Mitte Februar wieder bestellbar
    Elektroauto
    VW e-Up ab Mitte Februar wieder bestellbar

    Der e-Up gehörte 2021 zu den meistgekauften Elektroautos. Nun will VW den Kleinwagen wieder verfügbar machen.

  2. Bitcoin, Ethereum: Was steuerlich bei Kryptowährungen gilt
    Bitcoin, Ethereum
    Was steuerlich bei Kryptowährungen gilt

    Kryptowährungen wie Bitcoin sind unter Anlegern beliebt - doch wie muss man die Gewinne eigentlich versteuern?

  3. Neues Geschäftsmodell: Luca-App plant flexible Abos und will Preise senken
    Neues Geschäftsmodell
    Luca-App plant flexible Abos und will Preise senken

    Angesichts drohender Kündigungen will die Luca-App den Bundesländern entgegenkommen.

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 • Bosch Professional zu Bestpreisen • WSV bei MediaMarkt • Asus Vivobook Flip 14" 8GB 512GB SSD 567€ • Philips OLED 65" Ambilight 1.699€ • RX 6900 16GB 1.489€ • Samsung QLED-TVs günstiger • Asus Gaming-Notebook 17“ R9 RTX3060 1.599€ • Seagate 20TB SATA HDD [Werbung]
    •  /