当前位置: 首页 > news >正文

MLIR Introduction

简介

MLIR 项目是一个构建可重用和可扩展编译器基础设施创新项目,旨在解决软件碎片化问题,显著降低构建特定领域编译器的成本。

基于MLIR,可以实现:

  • 数据流图表达(如TensorFlow),包含dynamic shape,用户扩展op等;
  • 数据流图的优化和变换,如Grappler;
  • 跨Kernel实现HPC风格的循环优化(如fusion,interchange,tiling等),数据在内存中的layout变换;
  • 针对1D(如CPU)和2D(如GPU)寄存器架构的代码生成“lowering”转换,如DMA指令插入,显式cache管理,内存Tiling,矢量化;
  • 表达特定硬件后端的的op,如加速器的高级操作;
  • 深度学习图变换,如量化等;
  • 多面体原语;
  • 硬件综合工具。

常用术语

Block(Basic Block):一个没有控制流的顺序operation列表。

Conversion:将代码从一种Dialect表示转换为语义等价的同一种(intra-dialect)或另一种Dialect(inter-dialect)表示。在MLIR的上下文中,conversion表示MLIR内的转换,既不转换到MLIR Dialect以外的表示(如LLVM IR)。

CSE (Constant Subexpression Elimination):公共子表达式消除

TODO

参考资料:

MLIR

Glossary - MLIR

http://www.lryc.cn/news/609544.html

相关文章:

  • cobalt strike(CS)与Metasploit(MSF)联动
  • Nestjs框架: @nestjs/config 配置模块详解与实践
  • Go 语言模糊测试 (Fuzz Testing) 深度解析与实践
  • 基于鼠标位置的相机缩放和平移命令的实现(原理+源码)
  • Java 17新特性深度解读:Records、Sealed Classes与Pattern Matching
  • 宝塔面板安装WordPress教程:10分钟一键部署搭建个人博客 (2025)
  • Git如何同步本地与远程仓库并解决冲突
  • Linux 用户与组管理全解析
  • 电商系统想撑住大流量?ZKmall开源商城靠微服务 + Spring Boot3 解决单体架构难题
  • JavaScript中的作用域、闭包、定时器 由浅入深
  • 肾上腺疾病AI诊疗一体化系统应用方向探析
  • 机器学习——学习路线
  • 【拓扑序 容斥原理】P6651 「SWTR-5」Chain|省选-
  • 登录验证码功能实现:Spring Boot + Vue 全流程解析
  • Ethereum:智能合约开发者的“瑞士军刀”OpenZeppelin
  • Neo4j 社区版 Mac 安装教程
  • 数据结构---配置网络步骤、单向链表额外应用
  • Vue3核心语法进阶(Hook)
  • 如何使用EF框架操作Sqlite
  • 20250805问答课题-实现TextRank + 问题分类
  • 量子计算接口开发:Python vs Rust 性能对决
  • uniapp快遞上門提貨的時間選擇的插件
  • PyTorch生成式人工智能(25)——基于Transformer实现机器翻译
  • 代码详细注释:(linux)TCP客户端接收服务器端发的信息
  • AI 大模型分类全解析:从文本到多模态的技术图谱
  • Rust ⽣成 .wasm 的极致瘦⾝之道
  • 从 Hive 数仓出发,全面剖析 StarRocks、MySQL、HBase 的使用场景与区别
  • 【Spark征服之路-4.5-Spark-Streaming核心编程(三)】
  • [Oracle] TO_CHAR()函数
  • 安装MySQL教程时可能遇到的问题