[MLC-机器学习编译]02 张量程序抽象
笔记
- 本章以向量相加为例介绍了如何表示张量程序的抽象, 如何对张量函数进行变换/优化, 如何将抽象转化为可执行的函数.
- 视频
21:30
处的例子是错的, 原式调换循环等价, 具体见 https://github.com/mlc-ai/mlc-zh/discussions/12 - 一些概念的解释:
IRModule
中的IR
是指intermediate representation,tir
的t
是tensor.IRModule
是函数的集合, 包含high-level的relay::Function
和low-level的tir::PrimFunc
.- 感觉比较迷的是
T.axis.spatial(128, i)
, 只知道是一个绑定i
的迭代器, 没有查到具体的参数说明. TVM IR
除了可以用TVMScript
创建外, 还可以使用Tensor Expression
(视频没讲, Notes最后有).- 最后的矩乘例子中我本地设置
block_size=64
时最优.
踩坑
- 提供的包只有
python3.7/3.8
版本python3 -m pip install mlc-ai-nightly -f https://mlc.ai/wheels
Comments