算法之外 工程优化也非常重要,所以想做好AI的(不只是入门),cuda优化是必备能力
当然,如想更深入系统学习CV,和已在大厂做CV的同学一起提升,可了解下CV高级小班,且加送全网都没有的100多个全体系AI小课
大纲
第一阶段 了解CUDA与寄存器使用
第一课 CUDA基本介绍
知识点1:GPU架构与计算能力;线程模型;存储模型;stream概念,event概念
知识点2:其它:cuda debug方法;cuda-gdb使用
知识点3:例子:cuda向量加法; 矩阵加减法
实战项目:实现支持广播的Tensor的加法
第二课 Share memory与寄存器使用:
知识点1:Share memory介绍,以及bank/bank confilict 概念. 寄存器的介绍
知识点2:其它:profile工具Nsight Compute工具使用
知识点3:例子:matrix Ttranspose为例深入理解share memory作用; Maxpooling实现
实战项目:实现Tensor的任意维度Transpose。
第二阶段 掌握Cuda的Reduce/Gemm优化与通用库
第三课 Cuda Reduce优化
知识点1:Reduce Sum以及Warp通信原语,基于Warp通信的Reduce;
知识点2:例子:Matrix 按行按列Reduce Sum; Layer normal的实现
实战项目:Instance Normal的实现
第四课 Cuda Gemm优化
知识点1:gemm的常规实现及优化的思路
知识点2:Tensorcore的介绍 ,以及基于tensor core Gemm实现
实战项目:实现 Gelu(Matmul(A, B) + bais)复合实现
第五课 cuda的通用库介绍
知识点1:cuda cublas库的介绍,以及调用cublas实现gemm
知识点2:cutlass库的基本介绍,以及调用cutlass实现gemm
知识点3:Cudnn库介绍 及conv实现
实战项目:基于cutlass的gemm优化实现(搜索配置,提高gemm的性能)
第三阶段 实战 Transformer Layer与量化优化
第六课 实战优化: Transformer Layer的cuda实现
知识点1:Transformer基本介绍
知识点2:Transformer实现优化
实战项目:LSTM cuda实现(对比cudnn)
第七课 量化优化
知识点1:量化的基本原理;int8量化;int8 gemm;
实战项目:量化QMatMul实现
实战项目:实现量化版本的LSTM
了解更多
https://www.julyedu.com/course/getDetail/330/LOe1mH1yH8iD1WPqHSH48aj1
微信群 公众号