commit | ac9548469e8e46f8ad6ea29c1c7144a774ebba19 | [log] [tgz] |
---|---|---|
author | harsh-nod <harsh@nod-labs.com> | Wed Nov 15 21:17:04 2023 -0800 |
committer | GitHub <noreply@github.com> | Wed Nov 15 21:17:04 2023 -0800 |
tree | e0fa1ffb5a8f21f37dd331c5d1a9f343dd944095 | |
parent | 561841ca6a0fc17aac2b1f4220c1a7ff239e6c17 [diff] |
Add vector_ext dialect (#15599) This patch introduces the vector_ext dialect. The purpose of this dialect is to have a place for experimenting with things beyond what the upstream vector dialect provides. In this particular PR, two new features are added 1. An explicit IR representation of the high dimensional layout that looks like this #iree_vector_ext.per_dim_layout<"BatchX"<"LaneX"<"VecY", 2>, 4>, 4> The nesting makes clear what the innermost dimensions are and their corresponding shapes. 2. Adds a layout conflict resolution operator. During layout analysis, this operator can be used to resolve any differences in layout. The lowering of this operator is not provided but the semantics are that given a vector with an existing layout and a desired layout, the operator transforms the vector to the desired layout.
IREE (Intermediate Representation Execution Environment, pronounced as “eerie”) is an MLIR-based end-to-end compiler and runtime that lowers Machine Learning (ML) models to a unified IR that scales up to meet the needs of the datacenter and down to satisfy the constraints and special considerations of mobile and edge deployments.
See our website for project details, user guides, and instructions on building from source.
IREE is still in its early phase. We have settled down on the overarching infrastructure and are actively improving various software components as well as project logistics. It is still quite far from ready for everyday use and is made available without any support at the moment. With that said, we welcome any kind of feedback on any communication channels!
See our website for more information.
IREE is licensed under the terms of the Apache 2.0 License with LLVM Exceptions. See LICENSE for more information.