ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

AI集群网络面试通关指南:RDMA、RoCEv2与NCCL核心考点解析

AI集群网络面试通关指南:RDMA、RoCEv2与NCCL核心考点解析

1. 为什么AI集群网络成了面试的"隐形门槛"

面过AI Infra岗位的人大概都有个共同感受:面试官问完GPU架构、CUDA编程、分布式训练框架之后,往往会突然拐到一个看起来"不太AI"的方向——网络。很多候选人在这里翻车,不是因为不懂TCP/IP,而是因为AI集群的网络需求和传统数据中心网络完全是两码事。

传统数据中心网络追求的是"高吞吐、低丢包、易运维",而AI集群网络追求的东西更极端:超低延迟、零丢包、超高带宽利用率、大规模可扩展。这两个目标之间的差距,就像家用轿车和F1赛车的区别——都是车,但设计哲学完全不同。

我在过去几年里参与过几个不同规模的训练集群搭建和调优项目,从几十张卡的小集群到上千张卡的大集群都摸过。说实话,网络这块踩过的坑比GPU本身还多。GPU坏了换一张就行,网络配置错了或者拓扑设计不合理,那是整批训练任务一起遭殃,排查起来还特别费劲。

这篇文章主要面向准备AI Infra面试的候选人,以及刚进入这个领域、需要快速建立网络知识框架的工程师。我会从面试常考的核心知识点出发,把AI集群网络的基础概念、关键技术、常见拓扑、性能调优和排错思路都串一遍。不会只讲概念,而是结合我在实际项目中遇到的情况,把"为什么这么设计"和"面试官到底想听什么"讲清楚。

2. AI集群网络和普通数据中心网络到底差在哪

2.1 流量模式的本质差异

普通数据中心里,流量模式是"南北向为主、东西向为辅"。用户请求从外部进来,经过负载均衡打到某台服务器,服务器查数据库、调微服务,流量在整个数据中心里来回穿梭。这种流量的特点是:单条流带宽不大,但流的数量极多,对延迟的敏感度相对分散。

AI集群完全不是这个逻辑。以大规模分布式训练为例,一张GPU上的梯度需要和其他所有GPU做AllReduce同步。如果是1000张卡的集群,每张卡每轮迭代都要和其余999张卡交换数据。这就导致流量模式变成了极度密集的东西向流量,而且往往是突发性的、同步的——所有卡几乎在同一时刻开始通信,通信量还特别大。

更麻烦的是,AI训练对通信延迟极其敏感。数据并行训练中,每轮迭代的计算时间和通信时间是有重叠的,但如果通信太慢,GPU就会空等,算力利用率直接掉下来。我见过一个案例,某团队用普通万兆以太网搭了个小集群,GPU利用率只有30%出头,换成高速网络后直接拉到80%以上。网络不是配角,它直接决定了你花大价钱买的GPU能不能吃饱。

2.2 面试官想听到的关键词

当面试官问"AI集群网络和普通网络有什么区别"时,他期待的答案通常包含这几个层面:

  • 带宽需求:AI集群通常需要100Gbps起步,主流是200G/400G,下一代已经在往800G走。普通数据中心服务器接入一般是10G/25G。
  • 延迟要求:AI集群的端到端通信延迟要求在微秒级,普通数据中心在毫秒级就能接受。
  • 丢包敏感度:AI训练流量对丢包几乎是零容忍。一个丢包就可能触发重传,重传带来的延迟抖动会拖慢整个同步过程。
  • 拓扑结构:普通数据中心常用三层架构(接入-汇聚-核心),AI集群更倾向于两层甚至单层扁平化拓扑,比如Spine-Leaf或者更激进的Rail-Optimized。
  • 协议选择:普通网络跑TCP/IP就行,AI集群大量使用RDMA(Remote Direct Memory Access),配合RoCEv2或者InfiniBand。

这几个点如果你能在面试中主动说出来,并且解释清楚背后的原因,面试官基本就能判断你是真的理解,而不是背八股。

2.3 一个容易被忽略的维度:同步性

还有一个很多人不会主动提的点:AI集群的通信是高度同步的。在数据并行训练中,所有worker在同一时刻发起AllReduce,通信模式非常规整。这带来的好处是流量可以预测,坏处是瞬时拥塞风险极高。

传统数据中心网络可以通过统计复用把带宽跑得很满,因为不同应用的流量高峰是错开的。但AI集群里,所有流量同时爆发,网络必须在这个瞬间提供足够的带宽,否则就会排队、丢包。这就是为什么AI集群网络的超额订阅比(oversubscription ratio)通常要求做到1:1甚至更低,而普通数据中心1:3、1:5都很常见。

3. RDMA为什么是AI集群的"标配"

3.1 从TCP/IP的瓶颈说起

要理解RDMA为什么重要,先得知道传统TCP/IP在AI场景下卡在哪。

TCP/IP协议栈的处理路径很长:数据从应用层往下走,经过socket层、TCP层、IP层,再到网卡驱动,最后才到网卡硬件。每一层都要做内存拷贝、上下文切换、协议头处理。一个数据包从发送端应用到接收端应用,中间要经历多次内存拷贝和CPU干预。

在普通场景下这不是问题,因为网络带宽相对CPU处理能力来说是够用的。但到了100Gbps以上的场景,CPU光是处理网络协议栈就可能跑满一个核。更致命的是延迟:TCP/IP的端到端延迟通常在几十微秒级别,而RDMA可以做到几微秒甚至更低。

RDMA的核心思路是绕过操作系统内核,让网卡直接访问应用内存。数据从应用缓冲区直接搬到网卡,接收端网卡直接写到应用缓冲区,全程不需要CPU参与数据搬运,也不需要内核协议栈处理。这就是所谓的"零拷贝"和"内核旁路"。

3.2 RoCEv2和InfiniBand怎么选

RDMA有两种主流实现方式:InfiniBand和RoCE(RDMA over Converged Ethernet)。面试中经常会被问到这两者的区别和选型考量。

对比维度InfiniBandRoCEv2
物理层专用IB网络以太网
协议原生IB协议RDMA over UDP
延迟极低,约1-2微秒较低,约3-5微秒
带宽主流400G/800G主流100G/200G/400G
生态封闭但成熟开放,兼容以太网
成本较高相对较低
运维复杂度专用工具链复用以太网运维体系
拥塞控制基于信用的流控依赖PFC/ECN

InfiniBand的优势在于它是为RDMA原生设计的,从物理层到协议层都是端到端优化,延迟和稳定性都是最好的。缺点是贵,而且生态相对封闭,运维需要专门的技能栈。

RoCEv2的优势是跑在以太网上,可以复用现有的以太网基础设施和运维体系,成本更低。缺点是对网络配置要求极高——PFC(Priority Flow Control)和ECN(Explicit Congestion Notification)必须配好,否则丢包会导致RDMA性能急剧下降。

我在实际项目中的体会是:如果是超大规模训练集群(千卡以上),预算充足的话InfiniBand仍然是首选,省心。如果是中等规模或者预算有限,RoCEv2完全可以胜任,但网络调优的工作量会大不少。

3.3 RoCEv2的PFC和ECN:面试高频考点

PFC和ECN是RoCEv2里最容易被追问的两个机制,也是实际运维中最容易出问题的地方。

PFC(Priority Flow Control)是一种链路层的流控机制。当接收端某个优先级的队列快满了,它会向上游发送PAUSE帧,让上游暂停发送该优先级的数据。这样可以防止缓冲区溢出导致丢包。但PFC有个著名的问题叫PFC风暴:如果网络拓扑中有环路或者配置不当,PAUSE帧可能在整个网络中扩散,导致大面积拥塞甚至死锁。

ECN(Explicit Congestion Notification)则是在IP层做拥塞标记。当交换机发现某个队列长度超过阈值时,它不会直接丢包,而是在数据包的IP头里打一个ECN标记。接收端收到后,通过ACK把拥塞信息传回发送端,发送端据此降低发送速率。ECN是端到端的拥塞控制,比PFC更温和。

实际配置中,PFC和ECN通常配合使用:PFC作为最后一道防线防止丢包,ECN作为主要的拥塞控制手段。面试中如果被问到"RoCEv2怎么保证不丢包",能把PFC和ECN的配合关系讲清楚,基本就过关了。

注意:PFC的阈值设置非常关键。设得太低会导致频繁触发流控,带宽利用率下降;设得太高又起不到防丢包的作用。通常需要根据交换机缓冲区大小和网络RTT来仔细计算。

4. AI集群的拓扑设计:从Fat-Tree到Rail-Optimized

4.1 为什么传统三层架构不适合AI集群

传统数据中心的三层架构(接入层-汇聚层-核心层)是为南北向流量优化的。服务器接入交换机,接入交换机上行到汇聚,汇聚再上行到核心。这种架构的问题是超额订阅比很高:接入层到汇聚层通常是1:3甚至1:5,意味着如果所有服务器同时满速发送,上行链路根本扛不住。

AI集群的东西向流量模式让这个问题变得不可接受。如果AllReduce通信时上行链路成为瓶颈,整个训练就会被拖慢。所以AI集群网络的设计目标之一就是降低超额订阅比,理想情况下做到1:1无阻塞。

4.2 Spine-Leaf:当前最主流的方案

Spine-Leaf(也叫叶脊架构)是目前AI集群最常用的拓扑。它的结构很简单:Leaf交换机连接服务器,Spine交换机连接所有Leaf。每个Leaf都上行到所有Spine,形成全互联。

这种架构的好处是任意两台服务器之间的通信路径长度相同(都是Leaf-Spine-Leaf,三跳),延迟可预测。而且通过合理设计Spine和Leaf的数量比例,可以做到1:1无阻塞。

举个例子:假设有32台Leaf,每台Leaf有32个下行端口接服务器,32个上行端口接Spine。那么需要32台Spine(每台Spine连接所有32台Leaf)。总服务器数 = 32 × 32 = 1024台。总带宽 = 32 × 32 × 400G,无阻塞。

Spine-Leaf的缺点是布线复杂度随规模增长很快。1024台服务器就需要32×32=1024条Spine-Leaf链路,加上服务器到Leaf的链路,总共两千多条线。大规模集群的布线是个大工程。

4.3 Rail-Optimized:为AllReduce量身定制

Rail-Optimized拓扑是近几年在大规模AI集群中流行起来的一种设计。它的核心思想是让同一台服务器上的多张GPU网卡分别连接到不同的Leaf交换机,形成多个"Rail"。

具体来说,假设每台服务器有8张GPU,每张GPU配一张400G网卡。在Rail-Optimized拓扑中,每台服务器的第0张网卡连接到Rail 0的Leaf,第1张网卡连接到Rail 1的Leaf,以此类推。这样整个集群就被分成了8个Rail,每个Rail内部是一个独立的Spine-Leaf网络。

这种设计的好处是:在AllReduce的Ring算法中,通信主要发生在同一Rail内部。因为Ring AllReduce的每一步都是相邻GPU之间的通信,如果相邻GPU的网卡在同一个Rail里,通信路径就短,延迟低。跨Rail的通信只在特定步骤发生,压力小很多。

我参与过的一个项目从标准Spine-Leaf切换到Rail-Optimized之后,AllReduce的通信效率提升了大约15%-20%。这个提升在千卡级别的训练中意味着每天能多跑好几轮迭代。

4.4 拓扑选择的核心权衡

面试中如果被问到"你会怎么设计一个AI集群的网络拓扑",不要直接说"用Spine-Leaf"或者"用Rail-Optimized",而是要先问清楚几个关键参数:

  • 集群规模:多少台服务器,每台几张GPU?
  • 通信模式:主要是AllReduce还是All-to-All?有没有参数服务器架构?
  • 预算:InfiniBand还是RoCE?
  • 运维能力:团队有没有专门的网络工程师?

然后根据这些参数给出建议。比如小规模集群(几十台服务器)用标准Spine-Leaf就够了,Rail-Optimized的复杂度不值得。大规模集群(几百台以上)且以数据并行为主,Rail-Optimized优势明显。如果训练任务里有大量MoE(Mixture of Experts)的All-to-All通信,那拓扑设计又要另做考虑。

5. 集合通信库:NCCL到底在干什么

5.1 NCCL的定位和核心功能

NCCL(NVIDIA Collective Communications Library)是AI集群通信里绕不开的一个组件。它负责在多个GPU之间做集合通信操作,比如AllReduce、AllGather、Broadcast、ReduceScatter等。

面试中关于NCCL的问题通常集中在几个方面:NCCL支持哪些通信算法、怎么选择算法、怎么调优、常见问题怎么排查。

NCCL的核心工作是:给定一组GPU和一个集合通信操作,自动选择最优的通信算法和通信路径。它会考虑GPU之间的物理连接方式(NVLink、PCIe、网络),然后决定用Ring还是Tree,用几条通道,怎么分块。

5.2 Ring AllReduce和Tree AllReduce的区别

Ring AllReduce是NCCL最常用的算法。它的思路是把所有GPU排成一个环,数据分成N份(N等于GPU数量),然后做两轮操作:ReduceScatter和AllGather。每一轮里,每个GPU只和相邻的两个GPU通信。

Ring AllReduce的优点是带宽最优:每个GPU发送和接收的数据量都是2×(N-1)/N×数据大小,当N很大时接近2倍数据大小。而且它不依赖特定的网络拓扑,任何全互联网络都能跑。

缺点是延迟随GPU数量线性增长。因为Ring的步骤数是2×(N-1),N越大,需要的通信轮次越多,累积延迟就越高。

Tree AllReduce则是另一种思路:把GPU组织成树形结构,数据从叶子往根汇聚,再从根往叶子分发。Tree的延迟是O(log N),比Ring的O(N)好很多。但Tree的带宽利用率不如Ring,因为根节点附近的链路会成为瓶颈。

NCCL会根据数据大小和GPU数量自动选择。小数据量、多GPU用Tree,大数据量用Ring,这是基本的选型逻辑。面试中能把这个逻辑讲清楚,并且解释为什么,就很加分。

5.3 NCCL调优的实战经验

NCCL有一堆环境变量可以调,面试中经常被问到"你调过哪些NCCL参数"。我列几个最常用的:

  • NCCL_ALGO:强制指定用Ring还是Tree。一般不建议强制,让NCCL自动选。但在某些特定场景下,比如网络拓扑不对称,手动指定可能更好。
  • NCCL_PROTO:指定用LL(Low Latency)还是LL128还是Simple协议。LL适合小消息,Simple适合大消息。
  • NCCL_NET_GDR_LEVEL:控制GPU Direct RDMA的级别。如果网卡和GPU在同一个PCIe Switch下,可以开启更激进的GDR。
  • NCCL_IB_HCA:指定用哪些网卡做RDMA。多网卡场景下这个很重要。
  • NCCL_SOCKET_IFNAME:指定用哪个网络接口做控制面通信。

实际调优中,我一般会先用NCCL自带的测试工具(nccl-tests)跑一遍基准,看看当前配置下的带宽和延迟。然后根据瓶颈在哪来决定调什么参数。如果带宽上不去,先查网络配置和GDR;如果延迟高,看看是不是算法选得不对。

提示:NCCL的日志(NCCL_DEBUG=INFO)里有非常详细的信息,包括选了哪个算法、用了哪些网卡、每条通道的带宽。排查问题时一定要先看日志。

5.4 多网卡场景下的NCCL配置

现代AI服务器通常配8张GPU和8张网卡(或者4张双口网卡)。NCCL需要正确地把GPU和网卡配对,才能发挥最大带宽。

理想情况下,每张GPU应该和它"最近"的网卡配对——也就是在同一个PCIe Root Complex或者同一个NUMA节点下的网卡。如果配错了,数据要跨NUMA节点走,延迟和带宽都会受影响。

检查GPU和网卡的拓扑关系可以用nvidia-smi topo -m命令。输出里会显示GPU和网卡之间的连接关系,比如PIX(同一个PCIe Switch)、PXB(同一个PCIe Bridge)、SYS(跨NUMA)等。NCCL会尽量选择PIX和PXB的路径。

如果发现NCCL没有用最优路径,可以通过NCCL_IB_HCA和NCCL_NET_GDR_LEVEL来手动干预。但更好的做法是在硬件选型和服务器配置阶段就把GPU和网卡的拓扑关系规划好,从根源上避免问题。

6. 面试中那些"看起来简单但容易答偏"的问题

6.1 "AI集群网络为什么不能丢包"

这个问题看起来简单,但很多人答不到点子上。常见的错误回答是"丢包会导致重传,重传会浪费时间"。这个回答不算错,但太浅了。

更深层的原因是:RDMA的可靠传输机制和TCP完全不同。TCP丢包后通过重传恢复,对上层应用基本透明。但RDMA的可靠连接(RC)模式下,丢包会导致整个连接进入错误状态,需要重新建立连接。这个过程可能涉及大量的状态同步,延迟是毫秒级的,而正常RDMA通信的延迟是微秒级的。一次丢包可能让性能下降几个数量级。

而且AI训练的通信是同步的,一个GPU的通信卡住了,整个AllReduce就卡住了,所有GPU都得等。这就是所谓的"木桶效应"——整个集群的训练速度取决于最慢的那条链路。

6.2 "带宽和延迟哪个更重要"

这也是个高频问题。标准答案是"看场景",但面试官想听的是你怎么判断在什么场景下哪个更重要。

对于大模型训练中的数据并行AllReduce,带宽更重要。因为每次通信的数据量大(梯度数据),通信时间主要取决于带宽。延迟虽然也重要,但在大数据量下,带宽是主要瓶颈。

对于小模型的频繁同步,或者MoE架构中的All-to-All通信,延迟更重要。因为每次通信的数据量小,但通信次数多,延迟累积起来很可观。

还有一个维度是通信与计算的重叠程度。如果通信能和计算完美重叠,那延迟的影响就被隐藏了,带宽成为主要矛盾。如果重叠不好,延迟就会直接暴露在关键路径上。

6.3 "怎么判断网络是不是训练瓶颈"

这个问题考察的是实际排查能力。我通常会这样回答:

首先看GPU利用率。如果GPU利用率明显低于预期(比如低于70%),而计算本身不是瓶颈,那网络很可能是问题。

然后用NCCL的基准测试工具单独测网络性能。如果NCCL测出来的带宽远低于网卡标称带宽,说明网络配置有问题。

还可以看训练日志里的通信时间占比。PyTorch的Profiler可以显示每个操作的时间分布,如果AllReduce或者AllGather占了大头,那网络就是瓶颈。

最后是看网络设备的计数器。交换机的端口统计里如果有大量的PFC PAUSE帧或者ECN标记,说明网络拥塞严重,需要调整流控参数或者扩容。

6.4 "RoCEv2和InfiniBand在运维上有什么区别"

这个问题考察的是实际运维经验。InfiniBand有自己的一套管理工具(如ibstat、perfquery),网络拓扑是专用的,运维相对封闭但省心。RoCEv2跑在以太网上,可以用标准的以太网工具(如ethtool、tcpdump),但需要额外关注PFC、ECN、DCB(Data Center Bridging)的配置。

RoCEv2最容易出的问题是PFC配置不一致。比如上游交换机配了PFC,下游没配,或者优先级映射不一致,就会导致流控失效。这种问题在跨厂商设备的环境中特别常见。

InfiniBand的常见问题则是子网管理器(Subnet Manager)的配置。SM负责管理IB网络的拓扑和路由,如果SM挂了或者配置错误,整个IB网络都会出问题。

7. 从面试题到实际工作:几个值得记住的原则

7.1 网络设计要从通信模式出发

不要先选拓扑再想通信模式,而是反过来。先搞清楚训练任务的主要通信模式是什么——是AllReduce为主,还是All-to-All为主,还是点对点为主。然后根据通信模式来设计拓扑和选协议。

比如MoE模型有大量的All-to-All通信,这种通信模式对网络的对分带宽(bisection bandwidth)要求很高,因为任意两个GPU之间都可能需要通信。这种情况下,Spine-Leaf的全互联拓扑比Rail-Optimized更合适。

7.2 调优要从瓶颈出发

网络调优最忌讳的是"什么都调一遍"。正确的做法是先定位瓶颈,然后针对性地调。定位瓶颈的工具包括NCCL日志、网络设备计数器、GPU Profiler等。

我见过一个团队花了大量时间调NCCL参数,最后发现瓶颈根本不在NCCL,而是网卡固件版本太旧,RDMA性能没跑满。先确认硬件和基础配置没问题,再调上层参数,这个顺序不能反。

7.3 面试中展示"排查思路"比展示"知识量"更重要

AI Infra面试中,面试官更看重的是你遇到问题怎么排查,而不是你背了多少知识点。当被问到一个网络问题时,不要急着给答案,而是先说出你的排查思路:先看什么指标,怎么缩小范围,怎么验证假设。

比如被问到"训练变慢了,怀疑是网络问题,你怎么排查",一个好的回答应该是:先确认是不是网络问题(看GPU利用率、通信时间占比),然后定位是哪段网络(看NCCL日志、网络计数器),最后针对性解决(调参数、换路径、扩容)。这个思路比直接说"调NCCL_ALGO"要有价值得多。

7.4 保持对新技术的好奇

AI集群网络这个领域发展很快。几年前400G还是顶配,现在800G已经在部署了。InfiniBand从HDR到NDR到XDR,每代带宽翻倍。RoCEv2的拥塞控制算法也在不断演进。

面试中如果能提到一些前沿方向,比如Ultra Ethernet Consortium在推动的下一代以太网标准、NVLink Switch在机架级互联中的应用、光互联在超大规模集群中的探索,会让面试官觉得你不仅懂基础,还关注行业动态。

但要注意,提新技术的时候要能说清楚它解决了什么问题、和现有方案比有什么优势,而不是只报个名词。面试官如果追问细节你答不上来,反而扣分。

8. 几个我在实际项目中踩过的网络坑

8.1 MTU不一致导致的性能问题

有一次帮一个团队排查训练变慢的问题,NCCL日志显示带宽只有预期的一半。查了半天发现是部分服务器的MTU设的是1500,部分是9000。RoCEv2对MTU很敏感,MTU不一致会导致分片,分片又会增加延迟和丢包风险。

部署RoCEv2时,一定要确保全网MTU一致,通常建议设成9000(Jumbo Frame)。这个检查应该放在部署 checklist 的第一项。

8.2 PFC死锁:一个让人抓狂的问题

PFC死锁是RoCEv2网络中最难排查的问题之一。现象是网络突然大面积拥塞,所有通信几乎停滞,但过一段时间又自己恢复了。

根本原因通常是网络中存在环路,或者PFC配置不当导致PAUSE帧在网络中循环传播。排查这种问题需要抓取交换机的PFC统计,看PAUSE帧的发送和接收情况。如果发现某个端口的PAUSE帧数量异常高,那问题很可能就在那里。

预防PFC死锁的关键是做好网络拓扑的环路检测,以及合理设置PFC的阈值和看门狗(watchdog)。很多交换机支持PFC看门狗功能,可以在检测到持续PAUSE时自动恢复,避免死锁。

8.3 GPU和网卡拓扑不匹配

前面提到过GPU和网卡的拓扑关系,这里再展开说一下。在一个项目中,服务器配置是8张GPU和4张双口网卡。理论上每张GPU应该能分到一张网卡,但实际测试发现NCCL只用了4张网卡,带宽只有预期的一半。

查了nvidia-smi topo -m才发现,4张网卡都挂在同一个PCIe Switch下,而8张GPU分在两个NUMA节点上。跨NUMA的GPU访问网卡时,带宽会打折扣。NCCL为了避免跨NUMA,只用了和GPU同侧的网卡。

解决方案是调整服务器的PCIe配置,让网卡均匀分布在两个NUMA节点上。这个问题在服务器选型阶段就应该确认,等到部署完再发现就很被动了。

8.4 交换机缓冲区太小导致的ECN频繁触发

ECN的阈值设置和交换机缓冲区大小直接相关。有一次用了一批缓冲区比较小的交换机,ECN阈值按默认配置设的,结果训练时ECN标记频繁触发,发送端不断降速,带宽利用率很低。

后来把ECN阈值调高了一些,让交换机缓冲区用得更充分,同时配合PFC做兜底,性能就正常了。ECN阈值的设置没有万能公式,需要根据交换机型号、缓冲区大小、网络RTT和流量模式来调。通常建议从保守值开始,逐步调优。

9. 面试准备的建议路线

如果你正在准备AI Infra面试,网络这块我建议按这个顺序准备:

第一层:基础概念。搞清楚RDMA、RoCEv2、InfiniBand、PFC、ECN、Spine-Leaf、Rail-Optimized这些基本概念。不需要每个都深入,但要知道它们是什么、解决什么问题。

第二层:原理理解。理解RDMA为什么快、PFC和ECN怎么配合、Ring AllReduce和Tree AllReduce的区别、NCCL怎么选算法。这一层是面试中区分"背过"和"理解"的关键。

第三层:实操经验。知道怎么用NCCL测试工具、怎么看NCCL日志、怎么用nvidia-smi topo -m查拓扑、怎么排查常见的网络问题。这一层最好能结合实际项目经验来准备,如果没有实际经验,可以通过搭建小规模测试环境来积累。

第四层:前沿动态。了解800G以太网、Ultra Ethernet、NVLink Switch、光互联等方向的最新进展。这一层不是必须的,但能让你在面试中脱颖而出。

最后说一点个人体会:AI集群网络这个方向,纸上得来终觉浅。看再多文档和论文,不如实际搭一个小集群跑一遍NCCL测试,亲手调一次PFC和ECN参数。面试中如果你能说出"我在实际环境中遇到过XX问题,排查过程是XX",比背一百个知识点都有说服力。网络这东西,坑踩多了自然就懂了。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进