了解集合通信与模型并行策略

集合通信

集合通信基础

通过HCCS实现两两互联(Full Mesh),如NPU与NPU之间,CPU与CPU之间;NPU和CPU之间通过PCIE连接。 Full Mesh是指在一个网络拓扑中,每个节点都直接连接到其他节点,形成一个完全互联的网络结构。在Full Mesh网络中,任何两个节点之间都可以直接通信。

2.A+X(16P):

双mesh组网(8P Full-mesh)

集合通信原语

  • 一对多 Broadcast :将通信域内root节点的数据广播到其他rank

    Scatter :将通信域内root节点的数据均分并散布至其他rank

  • 多对一

  • 多对多

模型并行策略

  • 数据并行(Data Parallelism,DP)

数据并行是指将一个批次(batch)的训练数据分成若干个小批次,分发给多个计算节点来进行训练的并行方式。

  • 流水并行(Pipeline Parallelism,PP)

对于分布式训练,当模型规模太大而无法存放在单个计算节点上时,可以使用流水并行。在流水并行中,模型被逐层拆分成几个阶段,每个计算节点仅存储并执行其中的一个阶段(一个阶段可以是一层,也可以是相邻的多层)。这样可以有效减轻每个节点内的存储压力。

  • 张量并行(Tensor Parallelism,TP)

如果单层/单阶段的模型依然太大而无法放在单个节点上怎么办?那就将它的参数进一步切分到多个节点上,每个节点计算部分结果,再通过通过节点间的通信获取到最终结果,这就是张量并行。简言之,流水并行是模型的层间切割,而张量并行是模型的层内切割。这两种模型并行的方式是可以同时存在的。

  • 专家并行(Experts Parallelism,EP)

专家并行是在分布式学习中专门针对MoE场景的并行策略,其主要思想就是将不同专家放在不同计算节点上进行并行计算。专家并行与之前所有的并行相比,最大的不同在于,输入数据需要通过一个动态的路由选择机制分发给相应专家,此处会涉及到一个所有节点上的数据重分配的动作,然后在所有专家处理完成后,又需要将分散在不同节点上的数据按原来的次序整合起来。

参考资料

相关推荐
小白狮ww16 分钟前
模型不再是一整块!Hunyuan3D-Part 实现可控组件式 3D 生成
人工智能·深度学习·机器学习·教程·3d模型·hunyuan3d·3d创作
York·Zhang31 分钟前
AI 下的 Agent 技术全览
人工智能·大模型·agent
思绪漂移36 分钟前
ReAct对“智能”做了一件什么事情
人工智能·agent
zhaomy202541 分钟前
MCP技术让AI助手长出"眼睛":Web开发的革命性变化
人工智能
不做无法实现的梦~44 分钟前
适合新手小白入门实现slam建图和路径规划的详细教程
人工智能·机器人·自动驾驶
热爱编程的小白白1 小时前
IPIDEA海外代理助力-Youtube视频AI领域选题数据获取实践
人工智能·音视频
高洁011 小时前
面向强化学习的状态空间建模:RSSM的介绍和PyTorch实现(3)
人工智能·python·深度学习·神经网络·transformer
apocalypsx2 小时前
深度学习-深度卷积神经网络AlexNet
人工智能·深度学习·cnn
leafff1232 小时前
一文了解LLM应用架构:从Prompt到Multi-Agent
人工智能·架构·prompt
无风听海3 小时前
神经网络之特征值与特征向量
人工智能·深度学习·神经网络