首页
›
AI智能与边缘计算工程
›
147-TVM与Triton算子编译优化
›
《TVM、LLVM与CUDA后端代码生成》
VIP5
本课程属于:147-TVM与Triton算子编译优化
AI智能与边缘计算工程 · 共 5 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
📘
TVM、LLVM与CUDA后端代码生成
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导入
学习目标 · 核心概念 · 整体框架
课程导入
学习目标
02
深度学习编译器基础
从计算图到算子 · 了解编译器前端 · 中端
深度学习编译器基…
从计算图到算子
03
TVM架构与工作流程
TVM的整体架构 · Relay IR · TE(Tensor Expressi…
TVM
架构
04
LLVM基础与IR
LLVM的架构 · 中间表示(IR) · 优化pass
LLVM
IR
05
CUDA编程模型与GPU架构
CUDA线程层次 · 内存层次 · SM架构
CUDA
GPU
06
TVM中的代码生成流程
从TIR到目标代码的完整流程 · 包括调度 · 绑定
TVM
代码生成流程
07
TVM的LLVM后端
TVM如何利用LLVM生成CPU和G… · 包括LLVM IR的生成 · 优化和对象代码生成
TVM
LLVM
08
TVM的CUDA后端
TVM如何直接生成CUDA C/C+… · 以及如何调用CUDA runtime…
TVM
CUDA
09
TVM的代码生成配置与目标选择
如何设置target · host · 以及使用LLVM和CUDA后端的配置…
TVM
的代码生成配置
10
TVM的调度原语与GPU优化
GPU相关的调度原语(bind · split · fuse
TVM
GPU
11
内存管理与数据布局
GPU内存分配 · 共享内存 · 全局内存
内存管理
数据布局
12
线程绑定与并行化
如何将循环映射到CUDA线程块和线程 · 以及线程绑定策略对性能的影响
线程绑定
并行化
13
向量化与内存合并
在CUDA后端中如何实现向量化加载/… · 以及内存合并访问的优化方法
向量化
内存合并
14
共享内存与同步
使用共享内存减少全局内存访问 · 以及同步机制(__syncthrea…
共享内存
同步
15
算子融合与代码生成
TVM中的算子融合策略(如conv+…
算子融合
代码生成
16
LLVM Pass与优化
TVM中使用的LLVM优化pass · 如循环展开 · 内联
LLVM
Pass
17
CUDA代码生成实战
以矩阵乘法为例 · 从TVM表达式到生成CUDA内核的完…
CUDA
代码生成实战
18
卷积算子的CUDA后端生成
以卷积为例 · 讲解如何通过调度和代码生成实现高性能…
CUDA
卷积算子的
19
TVM与cuDNN/cuBLAS集成
如何调用外部库 · 以及TVM代码生成与库调用的混合策略
TVM
cuDNN/cuBLAS
20
调试与性能分析
使用TVM的调试工具 · LLVM的opt工具 · CUDA的nvcc和profiler…
调试
性能分析
21
常见问题与解决方案
TVM代码生成中的常见错误(如内存越… · 同步缺失 · 类型不匹配)及调试方法
常见问题
解决方案
22
TVM的AutoTVM与AutoScheduler
自动调优如何影响代码生成 · 以及如何利用AutoTVM搜索最佳调…
TVM
AutoTVM
23
LLVM新特性与TVM
了解LLVM的近期发展(如MLIR · NVPTX后端)以及TVM如何适应这…
LLVM
TVM
24
CUDA图与流
在TVM生成的代码中如何利用CUDA…
CUDA
TVM
25
多GPU与分布式代码生成
TVM如何支持多GPU环境 · 以及代码生成时的设备分配和通信优化
GPU
分布式代码生成
26
TVM的FPGA/其他后端对比
对比LLVM · CUDA与FPGA后端的代码生成差异 · 理解TVM的通用性
TVM
FPGA
27
性能优化进阶
寄存器压力 · 指令级并行 · 循环展开
性能优化进阶
寄存器压力
28
案例实战
ResNet-50的CUDA后端代码…
案例实战
ResNet-50
29
综合项目
自定义算子并生成CUDA后端代码 · 通过TVM实现调度 · 代码生成和性能调优
综合项目
CUDA
30
课程总结与展望
回顾核心知识点 · 探讨TVM · LLVM与CUDA后端代码生成的未来…
课程总结
回顾核心知识点
所属VIP或分类
同VIP:Triton高性能GPU算子开发
同VIP:TVM-NPU后端编译器开发
同VIP:TVM与Triton大模型编译优化