正在展开内容…
浏览器里建立直觉,本地实验里验证假设。所有交互实时计算,无需 GPU 或 API 密钥。
看清参数状态如何占显存,以及梯度如何穿过多卡网络。
此教学账本每参数计 BF16 权重 2 bytes、FP32 主权重 4、FP32 梯度 4、Adam 两个 FP32 moment 共 8,合计 18 bytes。DDP 每卡复制;理想完全分片除以卡数。真实实现可能省略某份副本,且还要加上激活、临时 all-gather、kernel workspace 与碎片。
Ring all-reduce 对大小 S 的梯度,每 rank 理论发送 2(N−1)S/N bytes。图中前 N−1 步是 reduce-scatter、后 N−1 步是 all-gather,实际各 rank 同时流水通信。这里计算梯度的纯链路时间下界;不包含延迟、争用、算法切换或重叠。FSDP 另有参数 all-gather,不能把这一项当成它的完整通信成本。
带宽是你填入的单向有效 GB/s,并非某型号宣传的双向聚合带宽。Python systems 实验进一步分解 DP/FSDP/TP 与跨机链路,profiler 脚本提供算子实测。
python3 -m labs.run --experiment systems在项目根目录运行 · Python 3.10+ · 纯标准库 · 配置与预期输出见 labs/README.md
教学边界:这些是机制实验和离散事件模拟,不是完整 LLM 训练,也不代表任何模型或硬件的真实性能。