See the previous published edition.
Welcome to the forty-eighth issue of the MLIR Newsletter covering developments in MLIR, and related projects in the ecosystem. Please send any tips or feedback to javed.absar@gmail.com. This MLIR Newsletter is brought to you by a collective effort of contributors, we welcome your contributions! Special thanks to Mehdi Amini for starting these series, encouraging to continue this, and we hope to have new editions bi-weekly (i.e. every two weeks), and improve content quality over time so that it is useful to everyone in community.
Highlights
-
The Euro LLVM 2023 was held May 10-11 in Glasgow, U.K.
-
A lovely tutorial on MLIR Transform Dialect is out now.
-
Compiler Explorer now supports MLIR Trunk MLIR Trunk
-
Kristof Beyls wrote a nice summary on Office Hours Discussion at Euro-LLVM 2023.
MLIR RFC Discussions
-
Discussion on MLIR Bytecode: a stable serialization format. Earlier context RFC: A binary serialization format for MLIR can be found here.
-
Diego Caballero proposed [RFC][PSA?] Remove
vector.extractelement
andvector.insertelement
ops in favor ofvector.extract
andvector.insert
ops -
Tobias Gysi introduced a proposal and lead a discussion on how to model “distinct attributes” in MLIR. See RFC: Use Attributes to Model Distinct LLVM Metadata Nodes for context.
-
Proposal of a generic pass for MLIR that lets user specify mem2reg-related semantics for their dialects so they can easily promote memory slot patterns into direct uses of values. RFC: Generic mem2reg in MLIR
-
Discussions and RFC on Extending MLIR GPU device codegen pipeline
MLIR Commits
-
Add support for expressing scalable tile sizes. RFC/context: Scalable Vectorisation in Linalg - here.
-
A new interface [BytecodeOpInterface] to allow operations to opt-in skipping conversion to attribute and serializing properties to native bytecode.
-
A
-verify-roundtrip
option tomlir-opt
intended to validate custom printer/parser completeness. Diff here. Usage : MLIR_OPT_CHECK_IR_ROUNDTRIP=1 ninja check-mlir
In The Ecosystem
-
MLIR C/C++ Frontend working group held their monthly meeting
-
Maksim Levental presented Nelli: a Python embedded domain-specific language for emitting MLIR. It builds on top of existing MLIR Python bindings to map Python primitives to various MLIR dialects.
Useful Links