← 返回资讯
陈默
AI 行业分析师
已审核

AI Infra学习路线

看到那些AI Infra的学习路线图,你是不是也心动过?

AI Infra学习路线

AI Infra学习路线


看到那些AI Infra的学习路线图,你是不是也心动过?

CUDA、FSDP、vLLM排成一行,再配几篇顶会论文,包装得漂漂亮亮。看上去,学完就能起飞了,对吧?

可现实呢?等你把这些全啃完,站到一台八卡机器面前,训练Loss爆了——你连该按哪个键都不知道!

这说的不是别人,就是我本人。

我2019年硕士毕业,研究方向是HPC,校招进了大厂做AI Infra。你以为HPC和AI Infra听上去差不多?快别逗了!刚转过来那阵子,我摔得脸都歪了。什么坑没踩过?什么墙没撞过?

所以今天想跟你聊的这条路线,没有一丝假大空。它就是我一脚一个坑,填起来之后,又重构、又打磨出来的真东西。不敢说包含天下武功,但至少能帮咱们少走我走过的那些“看起来是路,其实是悬崖”的弯路。


第一块地基:GPU硬件与执行模型,不懂这个,后面全白搭

我面过不少校招生,聊起Transformer那叫一个飞起,各种公式信手拈来,感觉“这小伙子不错”。

然后我随口一问:“GPU和CPU到底区别在哪?”

他想了想,就一句:“并行核多。”

我再追问:“那你知道SM占满率,也就是Occupancy,是怎么影响性能的吗?”

愣住了。你看,这就尴尬了。

AI Infra说到底,你就是在跟硬件打交道!你以为写一行a = a + b,它就在GPU上“嗖”地跑完了?别想太简单,你得知道它到底怎么跑——指令从哪个单元发出去?数据存在哪级存储?延迟是多少?带宽有多宽?

我当年啃A100白皮书,反反复复读了三遍。

第一遍读完只有一个感觉:哦,原来还能这样。

第二遍才开始把书里讲的结构,和CUDA编程模型里的block、warp对应上。

到第三遍,我直接拿着Nsight Compute做实际Profile。你猜怎么着?亲手看到共享内存和全局内存的延迟差了——十几倍甚至几十倍!那种震撼,真的,比看十篇论文都来得扎心。

那具体要怎么学呢?别一上来就追新。今天H100发布了?明天B200出来了?你这么追,永远追不上,还容易学成个半桶水。

听我的,就找一张你最熟悉的、已经成熟的GPU,比如V100或者A100。把它给我吃透!

读NVIDIA的官方白皮书,一个部分一个部分地看。重点盯这三个地方:SM内部结构、Tensor Core到底怎么算数的、NVLink的拓扑。

然后!配合一个超级简单的矩阵乘法kernel,用Nsight Systems这个Profile神器跑一跑。亲眼看看实际访存花了多少时间,计算又花了多少时间。

这一番功夫,花你两周。但后面全是复利。相信我,复利!


第二块:CUDA编程和算子优化,这是训练“手感”唯一的办法

你肯定听过这种“好心劝告”:“现在还学什么手写CUDA?Triton、PyTorch自定义算子它不香吗?”

说这话的人,我敢打赌,他连TensorRT的INT8量化为什么在某些层上掉点,都找不出原因。

为什么?

手写CUDA,不是让你以后整天用C++写生产代码,那目标太浅了。手写CUDA的核心目的只有一个——逼你理解底层机制!

Warp divergence、bank conflict、持久化kernel、L2缓存利用……这些概念,你不亲手调一遍,它就永远只停留在纸面,永远只是字面词。

我自己的亲身经历,说出来你别笑。为了提高显存带宽利用率,我当时干了件“傻事”:照着cutlass,一个字一个字地写了一个Tiled GEMM Kernel。

你猜我写了几个版本?从Naive版开始,然后升级到用Shared Memory分块,再一个台阶一个台阶接触到Warp-level编程。每一步优化,肉眼可见地看到Nsight Compute上的内存吞吐计数器,从红色变成绿色!利用率数字从15%爬到了78%。

那一瞬间的感觉,比读一百篇论文都管用,真的不夸张。

说真的,你手里的那几个经典算子,每一个都是宝藏。比如Softmax,先写一个Naive版让它跑得通,再做一个Warp Reduce + 行方向Fuse Mask版本,感受效率的飞跃,最后用Online Softmax把二次读取的问题规避掉。每一个优化,都在拉你直接和硬件瓶颈对话。

你要实在找不到练习项目,去GitHub搜一个叫“AIInfraGuide”的开源项目。记得看它的第二章,那里就有手写Reduce、GEMM、Softmax、Attention的完整代码和详细解释。你就照着撸一遍!我保证,那感觉,比你翻十遍教程都来得真实、深刻。


第三块:分布式训练,别再一上来就背并行策略了

新人学分布式训练,最常见的坑是哪个?上来就背:FSDP、3D并行、ZeRO Stage 1/2/3……一个比一个溜。你问他Ring AllReduce和Tree AllReduce的区别?他眼神飘忽,支支吾吾半天说不清楚。

等到真要是搭集群的时候,惨了。你会发现,大模型训练的性能瓶颈,百分之八十都在通信!

我自己踩过最深的一个坑,说出来都心疼自己。当时用8卡A100训练一个6B的模型。满心欢喜启动,结果一看GPU利用率——不到40%!我拿着Nsight Systems一分析,人都傻了:大部分时间,GPU都在那干等着,等NCCL Kernel搞定。

后来我研究了Ring AllReduce的原理,把它的Chunksize从默认的256KB调成了1MB,并且最关键的一步,把通信操作的Overlap计算也做了。你猜怎么着?就这一个操作,训练吞吐直接涨了15%!

这背后的原理,你如果不懂,连问题出在哪都找不到。

所以学习顺序,千万别搞反。先搞懂点对点通信,也就是P2P。再去看集合通信原语——AllReduce、AllGather、ReduceScatter都是些什么东西。一步一步来,别跳!


写在最后

别让那些表面上花里胡哨的路线图晃花了你的眼睛。学AI Infra,最该有的不是“背论文”的脑子,而是一双愿意跟硬件“死磕”的手。

纸上算法再漂亮,也比不上自己亲手打出一个漂亮的底层算子。懂再多的道理,能让你真正入门的,还是你亲手调试的第一个Kernel——那就是你真正的起点。

538
13464 阅读
2 评论
分享
链接已复制
编辑说明

本文由 MakeSense 编辑团队撰写并审核。文中引用的数据和观点均经过交叉验证,如有疏漏欢迎在评论区指正。最后更新:2026年06月21日 18:15

陈默

AI 行业分析师

前某大厂 AI 实验室研究员,关注大模型技术演进和商业化落地。写过 200+ 篇行业分析,擅长从产品视角拆解技术趋势。

读者评论 2

技术小白 3天前
作为非技术人员也看懂了,感谢作者的通俗讲解。
回复 点赞 (3)
Dev小王 6天前
终于有人把这个说清楚了,收藏了。
回复 点赞 (8)