MLIR | |
---|---|
![]() The MLIR logo, used by the LLVM project | |
Original author(s) | Chris Lattner, Mehdi Amini, Uday Bondhugula, and others |
Developer(s) | LLVM Developer Group |
Initial release | 2019 |
Written in | C++ |
Operating system | Cross-platform |
Type | Compiler |
License | Apache License 2.0 with LLVM Exception |
Website | mlir |
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]
© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search