独立任务横向融合:一期实现与实验设计

一期要回答的是:同一 NPU 执行范围内,显式编排独立且资源互补的任务,能产生多少真实引擎重叠;相对后端已有并发路径,增加了什么收益? 先选择固定矩阵+向量任务对,输入与 buffer 已准备好,确认机制后再加入独立 DMA。以下是研究方案,不代表已完成的 Hexagon 实验。

1. 可解释的最小执行器

最初保留两项独立计算的主体实现,先确定资源、缓冲区和同步边界。矩阵任务 MM 使用已经准备好布局的输入,向量任务 VV 操作另一份数据,各自拥有独立输出和 scratch。两项任务都就绪后开始计时。

加入搬运任务后,可以用以下抽象语义组织执行。这里的操作是伪代码,不是目标 SDK 的 API:

检查 M、V、D 的输入已就绪,读写区间与临时状态互不冲突
为三项工作预留同时有效的缓冲区

异步发起矩阵任务 M,得到完成事件 eM
异步发起独立搬运任务 D,得到完成事件 eD
执行向量任务 V
发布 V 的完成状态,并释放已经不再使用的资源

等待 eM,发布 M 的完成状态
等待 eD,发布 D 的完成状态
复合入口返回

机制验证需要证明:异步发起后其他工作确实可以推进,等待不会提前阻止无关引擎,完成发布保证数据可见性。矩阵队列和 HVX worker 的具体行为见平台约束。

入口向主机统一返回,可以与设备内部保留独立任务状态并存。若还要主机提前看到短任务完成,则需额外完成事件接口;仅记录设备内完成时刻并不能消除主机端等待。

第一版采用固定任务顺序与固定配额。动态配对、JIT、完整图调度、服务 QoS 和运算迁移均可在机制验证后逐项引入。

2. 性能目标:让相同工作量从相加走向重叠

设独立任务的设备执行时间为 TM,TV,TDT_M,T_V,T_D。串行执行近似为:

Tserial≈TM+TV+TD T_{\mathrm{serial}} \approx T_M+T_V+T_D

当主要资源可独立推进、共享资源竞争较小时,理想重叠完成时间接近:

Tideal≈max(TM,TV,TD) T_{\mathrm{ideal}} \approx \max(T_M,T_V,T_D)

这只是说明重叠收益来源的理想模型。实际融合时间同时受任务自身变慢、控制与同步成本、排空拖尾及共享存储影响,应以测量值为准。资源服务时间的上界分析与其他收益机制见五类收益。

例如,100、80、60 微秒的三个独立任务串行合计约 240 微秒,理想重叠约 100 微秒。这是人为示例,不是目标 NPU 的测量。即使外部 launch 开销为零,内部重叠仍有独立的收益空间。

3. 四组必需对照

HFuse[1] 和 GoPTX[2] 都采用已有并发执行作为基线;VDCores[3] 的同 runtime 任务发射屏障消融,则帮助区分入口合并与内部依赖调度。

组别 执行方式 回答的问题
A:现有串行 保留后端原有图执行或批次优化,按顺序完成任务 实际串行路径成本是什么?
B:现有最佳并发 使用目标后端支持的图内重排、并发队列或适用的资源分配 已有机制能够实现多少重叠?
C:单入口内部串行 共用融合入口和 buffer 方案,但任务间保留完整等待 合并提交/调用边界的收益是什么?
D:单入口内部并发 尽量与 C 共用计算实现,通过屏障开关允许各引擎推进 缩小等待边界与内部重叠增加了什么?

C → D 主要隔离内部重叠;B → D 判断融合与更细调度相对已有并发增加的能力。两组比较都需要时间线解释,而非只报告总加速比。

为了保持比较成立,固定输入、精度、布局、数学工作量、频率策略和测量边界。各组都使用合理调优的 kernel;C/D 尽量共用主体实现和内存方案。如果为了并发增加了 buffer 或改变 tile,应作为额外变量单独报告。packing、布局准备和预分配若移出计时区间,所有组都采用相同处理,并另测包含准备成本的结果。

若 B 在后端没有实现路径,应记录具体限制。仅比较 A/C/D 可以证明该路径内部重叠的价值,但尚不能证明相对已有最佳并发的增量。

4. 从合成负载到真实独立工作

负载 实验目的 需要防止的混淆
布局已准备 GEMM + 独立激活/归约 首先验证 HMX/HVX 重叠 GEMM packing 或向量任务访存成为共同瓶颈
GEMM + 独立 DDR↔VTCM 搬运 验证矩阵与真实 DMA 共执行 传输目的区与矩阵输入/输出发生冲突
GEMM + 向量 + 独立 DMA 检验三类资源与共享带宽限制 双缓冲、描述符与 scratch 生命周期不完整
同图独立分支 / 不同 micro-batch 证明应用中确实存在 ready task 内存复用引入顺序,或准备阶段遗漏在计时外
不同请求中的互补任务 检验任务来源与完成语义 等待配对和短任务拖尾抵消收益

POD-Attention[4] 展示了真实请求中偏计算 prefill 与偏带宽 decode 的配对。它提供寻找负载的思路;应根据目标应用资源画像选择任务,不预设 attention 就是端侧原型的最佳负载。

5. 测量与消融

测量 作用
整体设备完成时间与有效吞吐 在相同工作量下判断净收益
HMX/HVX/DMA 时间线与实际重叠区间 确认多个引擎在推进有用工作
设备执行与主机提交/等待时间 区分内部资源重叠和外部边界开销
每项任务完成时刻与 slowdown 检查竞争、短任务时延和拖尾
VTCM 峰值占用、DDR 流量和带宽 判断并发所需 buffer 或 spill/fill 是否抵消收益
调度、事件与等待成本 检查细粒度管理成本
包含准备阶段的端到端结果 检查布局准备、配对和额外分配的实际代价

采用 warmup、多次重复和结果正确性核验;同时记录设备、SDK/后端版本、线程配置、shape、精度与计时定义。服务实验再加入 p95/p99、deadline miss rate 和能耗。一期机制实验先确保设备完成时间和引擎时间线可靠。

建议逐项扫描:

  1. 任务时长比例:先测长度接近的 M/VM/V,再让任一方显著更短,观察自然拖尾。
  2. 资源份额与 tile:改变 HVX worker、矩阵 tile、队列深度与并发窗口,比较固定份额和搜索所得配置。
  3. 共享带宽压力:对比高计算强度、偏片上访问及偏 DDR 的任务,加入争用对照。
  4. 内存与等待策略:固定相同 buffer 方案比较任务级屏障与独立完成,再单独评估额外 buffer 和提前释放。

目标是缩短完成时间、提高有效吞吐;不要求每个引擎在所有时刻都显示忙碌。

6. 如何解释结果与界定贡献

结果 可以支持的结论 下一步
D 优于 C,时间线显示重叠 内部多引擎编排有净收益 定位工作比例、带宽和缓冲区边界
D 优于 A,与 B 接近 资源互补有效,已有并发也能覆盖主要机会 找出放置、配额或同步粒度还能改进的部分
D 优于 B 与 C 融合内部调度提供了额外控制或开销优势 用消融区分配额、同步域与资源规划贡献
C 优于 A,D 与 C 接近 当前收益主要来自入口合并,或可重叠机会有限 分析等待位置、任务画像与共享瓶颈
引擎重叠但 D 变慢 并发竞争或管理成本超过收益 缩小窗口、调整 tile,或选择回退

HyperParallel-MoE[5] 已提供 NPU 内静态异构任务调度先例。因此,一期课题应落到具体执行模型、资源份额、同步边界与片上缓冲区的联合控制,明确相对现有并发路径的收益和适用范围。后续可以逐步加入动态 ready task、版本选择和依赖图;每项新增能力都要有独立证据。

参考文献

[1] LI A, ZHENG B, PEKHIMENKO G, et al. Automatic horizontal fusion for GPU kernels[C]//Proceedings of the 2022 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). 2022: 14–27. https://doi.org/10.1109/CGO53902.2022.9741270

[2] WU K, LIN Z, XI M, et al. GoPTX: fine-grained GPU kernel fusion by PTX-level instruction flow weaving[C]//Proceedings of the 62nd Annual ACM/IEEE Design Automation Conference (DAC). 2025: 1–7. https://doi.org/10.1109/DAC63849.2025.11132627

[3] HE Z, SAMPSON A, ZHANG Y, et al. VDCores: resource decoupled programming and execution for asynchronous GPU[J/OL]. arXiv preprint arXiv:2605.03190, 2026. https://arxiv.org/abs/2605.03190

[4] KAMATH A K, PRABHU R, MOHAN J, et al. POD-Attention: unlocking full prefill-decode overlap for faster LLM inference[C]//Proceedings of the 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 2025. https://arxiv.org/abs/2410.18038

[5] JIN Z, AI C, ZHANG G, et al. HyperParallel-MoE: multi-core interleaved scheduling for fast MoE training on Ascend NPUs[J/OL]. arXiv preprint arXiv:2605.23764, 2026. https://arxiv.org/abs/2605.23764v2


© 2026 Yang Huan · yanghuan9812@qq.com

results matching ""

    No results matching ""