Files
note_AI_compiler/iree/README.md
T
2026-08-20 17:20:09 +08:00

39 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# IREE 学习文档
> IREE 系统学习笔记。目标:在 TVM 0.6 经验基础上,**系统掌握 IREE 整体**(前端输入 →
> 编译中段 → HAL → codegen → 运行时),而非仅 codegen。
## 目录结构
- [00-plan.md](00-plan.md) —— 学习规划(含「是否先学 MLIR」的结论、阶段划分、资源)
- 后续各阶段笔记按 `NN-主题.md` 命名,边学边补充到下方进度表
## 学习进度
| 阶段 | 主题 | 状态 |
|---|---|---|
| 0 | 环境准备(编译 / 安装 IREE) | ✅ 完成([01-env.md](01-env.md)) |
| 1 | MLIR 基础(IREE 全流程的地基) | ✅ 速查已整理([03-mlir-basics.md](03-mlir-basics.md)) |
| 2 | IREE 架构总览与完整管线 | ✅ 完成([02-architecture.md](02-architecture.md)) |
| 3 | 前端输入(StableHLO / TOSA) | ✅ 完成([04-frontend.md](04-frontend.md)) |
| 4 | 编译中段(Flow + Stream) | ✅ 完成([05-flow.md](05-flow.md)、[06-stream.md](06-stream.md)) |
| 5 | HAL 设备抽象 | ✅ 完成([07-hal.md](07-hal.md)) |
| 6 | Codegen(可执行体 lowering) | ✅ 完成([08-codegen.md](08-codegen.md)) |
| 7 | 运行时(VM + iree-runtime) | ✅ 完成([09-runtime.md](09-runtime.md)) |
| 8 | 实践项目 | ✅ 完成(源码构建 + 自定义 pass,[10-build-from-source.md](10-build-from-source.md)、[11-writing-a-pass.md](11-writing-a-pass.md)) |
## 个人背景
- 熟悉 TVM 0.6:Relay、TE/TIR、schedule 原语、codegen(LLVM/CUDA/OpenCL)、runtime
- 接触过 IREE 的 codegen 部分
- 需求:系统补齐 IREE 整体,并建立 TVM → IREE/MLIR 的映射
## 关键映射(TVM 0.6 → IREE/MLIR)
| TVM 0.6 | IREE / MLIR |
|---|---|
| Relay(图级 IR、fusion) | Flow dialect + StableHLO/TOSA |
| TE / TIR + schedule 原语 | Linalg + Vector + tiling/vectorization |
| codegen(LLVM/CUDA/OpenCL) | 翻译到 LLVM / SPIR-V |
| runtime(graph runtime / VM) | HAL + VM |