分享
大模型 AI Compiler 入门材料
输入“/”快速插入内容
大模型 AI Compiler 入门材料
用户54
用户54
用户9934
用户9934
2025年12月3日修改
2024年5月25日创建
8254
11346
如果想下载文档,申请编辑权限即可,欢迎交流。
技术栈
1.
模型算法。LLM & diffusion models
2.
Torch Compiler
3.
OpenAI Triton
4.
MLIR & LLVM Compiler
5.
GPGPU 微架构
不管是 学习编译原理,还是 实现一个 Compiler,
现在应该学习
MLIR-Style Compiler Development
,而非传统编译原理 or llvm based compiler 的开发理念。
学习编译原理,尤其不要盯着 Parser / Lexer 等前端去深入看。重点在 Optimization。
核心领域:模型算法、体系结构、编译原理、自动性能优化(数学领域的 Optimization 分支)。
学习的 3 个关键维度:
1.
理论原理。
2.
动手能力。加一个 pass/dialect,调试一下 Tiling 策略。
3.
性能瓶颈的经验数字。比如,matmul 和 softmax,哪个跑的更快,核心看硬件的什么指标。
模型层
分 3 个阶段:
1.
知其然。能把自己的任务与模型结构联系起来,知道为什么要做,理解工作的意义。
2.
老法师。拿到新的模型结构,一眼看出性能瓶颈。
3.
趋势研判。能押宝未来 3-5 年模型的算力需求。
快速上手 & 动手练习
阅读材料:
1.
https://www.bilibili.com/video/BV1v4421c7fr/
Andrej Karpathy
- Let's build GPT. Jan 18, 2023 (目标:理解典型的模型结构)
2.
ICML22 tutorial slides
https://drive.google.com/file/d/1HFxSxIhbyrapCHEss_KcCdCJEmFrAUvo/view?usp=sharing
(目标:理解张量并行和 AllReduce)
动手练习:
1.
使用 PyTorch 从头实现一个 LLama2 Decoder,一个 Deepseek V3 MLA Attention。
2.
基于 PyTorch Distributed,修改为 TP=2,PP=2 的 4 node 分布式版本。可以 4 个 docker container 模拟 4 台机器进行功能测试。
3.
使用
torch.compile
编译模型,并观察生成的 Triton Kernels。
4.
简易的性能 simulator。latency 即 critical path 上的指令 latency 之和。难点是找到 critical path,可以用多个 node,模拟各个 hardware unit,模拟的跑一边。
5.
对性能 simulator & 算子 compiler 调参,理解不同硬件设计下,性能优化手段的定量影响。
Transformer 结构与 AI 算法