MLIR: A Compiler Infrastructure for the End of Moore's Law

02/25/2020
by   Chris Lattner, et al.
0

This work presents MLIR, a novel approach to building reusable and extensible compiler infrastructure. MLIR aims to address software fragmentation, improve compilation for heterogeneous hardware, significantly reduce the cost of building domain specific compilers, and aid in connecting existing compilers together. MLIR facilitates the design and implementation of code generators, translators and optimizers at different levels of abstraction and also across application domains, hardware targets and execution environments. The contribution of this work includes (1) discussion of MLIR as a research artifact, built for extension and evolution, and identifying the challenges and opportunities posed by this novel design point in design, semantics, optimization specification, system, and engineering. (2) evaluation of MLIR as a generalized infrastructure that reduces the cost of building compilers-describing diverse use-cases to show research and educational opportunities for future programming languages, compilers, execution environments, and computer architecture. The paper also presents the rationale for MLIR, its original design principles, structures and semantics.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/29/2023

nelli: a lightweight frontend for MLIR

Multi-Level Intermediate Representation (MLIR) is a novel compiler infra...
research
08/03/2018

A Compiler-Compiler for DSL Embedding

In this paper, we present a framework to generate compilers for embedded...
research
03/25/2019

Lost in translation: Exposing hidden compiler optimization opportunities

To increase productivity, today's compilers offer a two-fold abstraction...
research
11/22/2018

A solution to the problem of parallel programming

The problem of parallel programming is the most important open problem o...
research
02/07/2022

Composable and Modular Code Generation in MLIR: A Structured and Retargetable Approach to Tensor Compiler Construction

Despite significant investment in software infrastructure, machine learn...
research
08/10/2020

Co-design and Co-simulation for Engineering Systems: Insights from the Sustainable Infrastructure Planning Game

This paper draws on perspectives from co-design as an integrative and co...
research
05/07/2019

Programming Unikernels in the Large via Functor Driven Development

Compiling applications as unikernels allows them to be tailored to diver...

Please sign up or login with your details

Forgot password? Click here to reset