MLIR (software)

MLIR
Original author(s)Chris Lattner, Mehdi Amini, Uday Bondhugula, and others
Developer(s)LLVM Developer Group
Initial release2019
Written inC++
Operating systemCross-platform
TypeCompiler
LicenseApache License 2.0 with LLVM Exception
Websitemlir.llvm.org

MLIR (Multi-Level Intermediate Representation) is an open-source compiler infrastructure project developed as a sub-project of the LLVM project. It provides a modular and extensible intermediate representation (IR) framework intended to facilitate the construction of domain-specific compilers and improve compilation for heterogeneous computing platforms. MLIR supports multiple abstraction levels in a single IR and introduces dialects, a mechanism for defining custom operations, types, and attributes tailored to specific domains.[1] The name "Multi-Level Intermediate Representation" reflects the system’s ability to model computations at various abstraction levels and progressively lower them toward machine code.

MLIR was originally developed in 2018 by Chris Lattner at Google, and publicly released as part of LLVM in 2019.[2] It was designed to address challenges in building compilers for modern workloads such as machine learning, hardware acceleration, and high-level synthesis by providing reusable components and standardizing the representation of intermediate computations across different programming languages and hardware targets.[1][3]

MLIR is used in a range of systems including TensorFlow, Mojo, TPU-MLIR, and others.[4] It is released under the Apache License 2.0 with LLVM exceptions and is maintained as part of the LLVM project.[1]

  1. ^ a b c "Multi-Level Intermediate Representation Overview". mlir.llvm.org. Retrieved 2025-06-05.
  2. ^ Lattner, Chris; Amini, Mehdi; Bondhugula, Uday; Cohen, Albert; Davis, Andy; Pienaar, Jacques; Riddle, River; Shpeisman, Tatiana; Vasilache, Nicolas; Zinenko, Oleksandr (2021). MLIR: Scaling Compiler Infrastructure for Domain Specific Computation. 2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). pp. 2–14. doi:10.1109/CGO51591.2021.9370308.
  3. ^ "Why Mojo". docs.modular.com. Retrieved 2025-06-05.
  4. ^ "Users of MLIR". mlir.llvm.org. Retrieved 2025-06-05.

© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search