已关闭
[Question|问题咨询]: Grouped MatMul + MoE 场景下 expert 负载均衡问题 #369
Bug_制造者创建于 7月29日关闭于 8月12日
8月6日 将 longjihui 设为负责人
8月6日 issue状态由 进行中 改变为 已完成
8月6日 关闭了 issue
8月6日 issue状态由 已完成 改变为 已确认
8月6日 重新打开了 issue
longjihui
8月6日 评论:
8月6日 评论:
你好,这里kernel里的策略是循环计算每个group,按照L1:M和L1:N对每个group的计算进行切块,并修正尾列和尾行的block大小,切块后的数据排布使用Swizzle,将block0、block1、...、block_tail分给每个逻辑核,并将block_tail所分到的逻辑核的下一个核更新startCoreIdx,作为下一个group的起始核,所以对于实际的不均匀的MoE场景不会出现你提到的这种token分配不均引起的AICore 间负载不均。


8月6日 添加了label:Accepted
8月6日 issue类型由 任务 改变为 咨询
8月6日 添加了label:question
Bug_制造者
8月7日 评论:
8月7日 评论:
好的,明白了谢谢!


8月12日 issue状态由 进行中 改变为 已完成
8月12日 关闭了 issue
欢迎提出问题与大家一同讨论。
Welcome to ask questions and discuss with other members.
Describe the question / 问题描述 (Mandatory / 必填)
在 example 07
grouped_matmul_slice_m_per_token_dequant_moe中,多个 expert 的 token 被分组执行 MatMul。实际 MoE 场景中不同 expert 的 token 分配可能极不均匀(例如某个 expert 仅分配 1 个 token,而另一 expert 分配上千个 token)。请问当前的 grouped slice M 策略在这种极不均匀分布下是否存在 AICore 间负载不均的问题?是否有动态 re-scheduling 机制将某 expert 的过剩计算量迁移到空闲核心上?如果当前没有此机制,是否有 roadmap 计划支持?
Special notes for this question / 问题备注 (Optional / 选填)