Kernel Fusion 的五类收益与配套优化
本页保留 kernel fusion 的广义优化分类,作为独立任务横向融合专题的配套资料。 当前课题优先研究 A 资源互补,并通过实验分离 E 开销摊销;B/C 的运算改写与 D 的纵向复用 用于理解后续可组合的优化。具体 GPU 前序与多引擎任务抽象分别见 横向融合和资源解耦执行。
端侧 NPU 的算子融合与调度优化涉及计算资源、数据依赖、片上存储和运行时开销等多个因素。 本文将相关方法归纳为五类优化机制:A 资源互补、B 工作迁移、C 工作削减、D 中间数据复用、 E 开销摊销。在此基础上,比较已有研究的目标平台、实现方式与性能结果,并分析这些机制在 Hexagon 的 HVX、HMX 和 DMA 之间实现的条件与约束。
A–E 描述的是性能收益的来源,而非互斥的算法类别。同一实现可以同时采用多个机制: A/B 改善计算资源分配,C 减少瓶颈阶段的运算或数据处理,D 降低中间张量的存储访问, E 减少启动与协调开销。其增量收益取决于基线实现、资源竞争和运行时已有的并发能力。
1. 优化机制分类
1.1 Road Tree:研究分类与实现方向
分类树按主要优化机制组织代表性工作。卡片标注目标平台及技术特征,论文名称链接至原文, 分支标题链接至本文对应的 Hexagon 分析。GPU 或 CPU 上的结果提供方法依据,不能直接 作为端侧 NPU 的性能证据;B/C 也可作为融合与调度的配套优化,未必独立构成 kernel fusion。
1.2 机制定义与适用条件
| 机制 | 定义 | 主要收益来源 | 适用条件 |
|---|---|---|---|
| A 资源互补 | 重叠执行主要使用不同硬件资源的计算阶段 | 降低资源空闲时间,提高并行执行效率 | 阶段间依赖允许重叠,可同时驻留,且共享带宽竞争可控 |
| B 工作迁移 | 将瓶颈单元上的部分运算改写为其他单元可执行的形式 | 减少瓶颈单元的服务时间 | 运算可矩阵化,布局与精度满足要求,迁移成本小于收益 |
| C 工作削减 | 减少瓶颈阶段的运算次数或数据处理量 | 缩短瓶颈阶段的执行时间 | 保持算法语义;采用近似计算时需满足误差要求 |
| D 中间数据复用 | 融合存在生产者—消费者依赖的算子,保留中间结果的局部性 | 减少中间张量的片外读写与重复搬运 | 数据依赖可在 tile 范围内处理,片上存储容量足够 |
| E 开销摊销 | 合并执行入口或复用运行时状态 | 减少 launch、dispatch、同步与映射开销 | 合并后满足依赖、资源和时延约束 |
1.3 资源互补的理想收益上界
在稳态流水模型中,设同一工作单元在 DMA、HVX、HMX 上的资源服务时间分别为 。 若串行基线耗时为 ,并忽略流水启动、排空与资源竞争,则重叠执行的理想加速比满足:
例如,在仅包含 HVX 与 HMX 的两阶段负载中,若二者分别占串行时间的 80% 与 20%,则理想 加速比上界为 。当单一阶段占据主要执行时间时,单纯增加重叠的 收益有限;减少该阶段的工作量(C)或迁移其中部分运算(B)可能具有更高的优化价值。
2. 相关研究:平台、机制与性能结果
下表保留各研究报告的代表性性能结果。由于负载、基线和指标不同,这些数值用于说明各方法的 实验结论,不宜据此进行跨论文的直接性能排序。
| 工作 | 平台 / 设备 | 主要机制 | 实现方式 | 报告的性能结果 |
|---|---|---|---|---|
| Tacker[1] | NVIDIA GPU | A + E | 静态融合 Tensor Core 与 CUDA Core kernel,结合时长预测与 QoS 约束选择执行版本 | best-effort 吞吐提高 18.6% |
| Aker[2] | NVIDIA GPU | A | 在 SM 内组织互补计算,并自适应选择融合版本 | 提高资源利用率并满足 QoS 约束 |
| HFuse[3] | NVIDIA GPU(1080Ti/V100) | A + E | 横向合并独立 kernel 的线程空间,结合 inline PTX barrier 与线程配比搜索 | 相对双 stream 并发基线加速 2.5%–60.8% |
| POD-Attention[4] | A100 GPU | A | 在同一 kernel、同一 SM 内并发执行计算密集的 prefill 与内存密集的 decode | attention 加速最高 59%,平均 28% |
| Orion[6] | V100 / A100 GPU | A(协同调度) | 根据算子的计算与访存特征,执行细粒度、干扰感知的协同调度 | 聚合吞吐最高 7.3× |
| SYCL online fusion[18] | Intel GPU/CPU(OpenCL) | D + E | 运行时 JIT 生成融合 kernel,并在 kernel 内处理算子间数据流 | 降低多个小 kernel 的执行开销 |
| Diffuse[16] | 多 GPU / 分布式 | D + E | 结合分布式 IR 与 MLIR JIT,实现跨函数和库边界的 task 与 kernel 融合 | 平均加速 1.86×,最高 10.7× |
| DeepFusionKernel[15] | A100 / H100 | D | 纵向融合 SwiGLU MLP,消除中间激活的 HBM 读写 | A100 提升 9.7%,H100 提升 13.2% |
| FlashAttention-3[5] | H100 | A | 使用 warp specialization 与 ping-pong 流水,将 softmax 与异步 block GEMM 重叠 | 加速 1.5–2.0×,利用率 75% |
| FlashAttention-4[12] | B200 / GB200 | A + C | 异步 MMA、软件实现 exp、条件 rescale,以及基于 TMEM 的共享内存流量优化 | 相对 cuDNN 1.3×,相对 Triton 2.7× |
| FlashAttention-T[10] | A100 / H100 / AGX Orin | B(兼有 A) | 通过操作数分配,将部分 softmax 运算映射至空闲的 Tensor Core MMA | 向量阶段加速 1.17–2.18×;H100 上占比降至 2.7% |
| VFA[13] | 现代加速器 | C | 重排 key block 并固定 running max,减少 rowmax 与 rescale 的执行频次 | 约 2×(C4V32/C8V32) |
| FlashAttention-V[19] | RVV / SVE CPU(Banana Pi) | 向量资源利用率优化 | 通过跨 head 复用与 inter-head packing 提高长向量寄存器的有效利用率 | prefill 相对标量实现加速 22–42× |
| Scaling LLM TTC[14] | Snapdragon Hexagon | C | 采用适配硬件的 tile 量化,并用 LUT 优化 softmax 与反量化 | 混合精度 GEMM 19.0×,softmax 2.2× |
| EStream[7] | Snapdragon Hexagon | A(兼有 E) | 组织 DMA/HVX/HMX 逐 tile 流水,以及压缩权重与解码权重的双缓冲 | bubble 占比 34.41%→9.05%;TTFT 加速 2.25–27.57× |
| BigMoMo[8] | 两种移动平台 | A + D/E | 在投机验证窗口内聚合专家访问,交替使用权重缓冲并对就绪专家分组 | 相对按需卸载解码加速 4.83×;相对投机基线 1.82× |
| llada.cpp[9] | 移动 NPU | A + E | 多块投机解码、CPU/NPU 双路径执行与内存交换优化 | 加速 17–42× |
| Hexagon-MLIR[17] | Qualcomm Hexagon | D + E | MLIR Async、自动双缓冲与 megakernel,提高 TCM 数据局部性 |
支持从 Triton/PyTorch 生成目标代码 |
| llama.cpp(FA / GDN) | Snapdragon Hexagon | A + B | HMX 异步队列、attention 缩放与归一化、GDN 分块矩阵化 | GDN prompt 加速 1.5–3×(见相关 PR) |
上述工作表明,融合方式与数据依赖之间存在以下关系:
- 横向融合不以中间数据复用为必要条件。 HFuse 区分了面向数据复用的纵向融合 (vertical fusion)与面向线程级并行的横向融合(horizontal fusion)[3]。 对无数据依赖的 kernel,资源互补与开销摊销仍可产生收益。
- 数据依赖决定融合时必须保留的执行约束。 生产者—消费者链为 D 提供直接机会; 独立任务更适合通过 A/E 组织并发。二者可以组合,例如在保持 tile 内依赖的同时重叠 不同 tile 的向量与矩阵阶段。
- 跨 tile 归约增加深度融合的复杂性。 DeepFusionKernel 指出,softmax 等具有 长距离依赖的操作不适合直接采用其纵向深度融合方案[15]。这限定了该方案的适用范围, 并不排除采用专门的分块与流水算法实现融合。
3. Hexagon 上的实现方向与约束
本节覆盖独立任务与有依赖的 tile 流水等多种情形。当前一期选择输入已就绪、缓冲区独立的 矩阵+向量任务对;tile 间流水、运算迁移与纵向复用是可组合的后续机制。已有异步队列、 QNN 重排及 VTCM 生命周期的分析集中在执行资源与平台约束。
3.1 A:HVX 与 HMX 的资源互补执行
对于依赖关系允许重叠的阶段,可将一个 tile 的 HVX 反量化、布局转换、softmax 或 epilogue 与另一 tile 的 HMX GEMM 交错执行,从而降低单元空闲时间。llama.cpp 的 attention 流水实现已包含 QK、输出更新与 HVX softmax 的交错调度。
实现约束主要来自队列语义与共享状态:HMX 队列按顺序执行矩阵任务;
work_queue_run_async()等待子任务完成后才返回;同一
htp_context包含共享的 DMA、工作队列和 VTCM 状态。
因此,并发调用两个完整算子之前,需要证明其上下文、缓冲区与资源管理支持并发访问。
一种可评估的设计是保留单一调度生产者,将算子拆分为可独立调度的计算阶段,为未完成任务 分配独立的 VTCM 区间和任务状态,再组合执行依赖已满足的 HMX 与 HVX 阶段。 配对决策应依据 tile 或阶段的资源特征:
仅依据算子名称或“HMX 密集型”等整体标签,无法判断其向量阶段是否仍占用大量 HVX 资源。 此外,QK 与 PV 均使用 HMX,其调度仍受同一矩阵资源的串行服务能力约束。
复合执行入口应保留各原始任务的独立完成状态。对于具有截止时间的短任务,完成后应及时 触发后续处理;若仅提供统一完成事件,其端到端时延可能受较长任务限制。
3.2 B:向量运算向矩阵单元迁移
将 HVX 工作迁移至 HMX,需要建立运算到矩阵计算的映射,并计入布局转换、数据搬运、 矩阵填充和精度变化的成本。代表性结构包括:
- 对角缩放映射为对角矩阵乘。 online softmax 中的
重标定与 归一化,分别由
hmx_fa_o_update_tile()和hmx_fa_o_norm_tile()在 HMX 上执行。 max、exp、sum 和倒数等运算仍由向量阶段处理。 - 归约与扫描映射为矩阵乘。 可通过与全 1 向量或三角矩阵相乘表达部分 reduction / scan, 利用矩阵单元的计算吞吐[11];收益取决于矩阵尺寸、转换成本与精度要求。
- 分块递推映射为矩阵运算。 GDN 的分块实现将状态相关乘法及分块 三角求解的部分计算交给 HMX,体现了算法重组与硬件映射的结合。
FlashAttention-T 将部分 softmax 运算映射至空闲的 Tensor Core MMA,为此类迁移提供了 方法依据[10]。Hexagon 上的具体收益仍需结合 HMX 的指令、布局和存储约束测量。
| 候选 HVX 工作 | 迁移可行性 | 主要限制 |
|---|---|---|
| 大 GEMM / FC / dense 卷积 | 较高 | 需先确认 HVX 执行是否由后端算子覆盖不足导致 |
| GEMM 的 bias、per-channel scale、ReLU/abs | 可在支持的 HMX 后处理路径中评估 | 静态通道参数与任意逐行动态系数具有不同语义 |
| Attention 输出 rescale / 归一化 | 已有实现 | 必须保留 online softmax 的跨块状态 |
| 可分块的递推 / 状态更新 | 具有研究价值 | 收益可能主要出现在 prefill 或批处理场景 |
| Sum / mean / scan | 有条件可行 | tile 利用率、额外搬运与精度变化可能抵消收益 |
| 滤波、Sobel、depthwise 小卷积 | 需实验评估 | 应与优化后的 HVX 或可分离实现比较 |
| resize、warp、gather/scatter、transpose、bit-unpack | 通常有限 | 主要限制往往来自寻址与数据排列 |
| exp、rsqrt、完整 softmax/LayerNorm/RMSNorm | 需按子运算分析 | 非线性部分仍需其他执行路径,仅包含乘加不足以保证整体可迁移 |
迁移还需满足两类语义约束。第一,按输出通道的静态参数不能直接替代任意逐行动态系数; 上述 attention 逐行缩放采用对角矩阵乘实现。第二,HMX 支持低比特计算,并不意味着任意 GGUF 量化格式均可直接作为其操作数;沿 维分组的 scale 通常不能合并为整次 GEMM 结束后的单次输出缩放。
3.3 C:瓶颈向量阶段的工作削减
在所研究的 Hexagon LLM 负载中,softmax 与反量化是重要的 HVX 开销来源[14]。 因此,除执行单元迁移外,还可直接减少这些阶段的计算或数据处理量:
- 查表与近似计算:采用 LUT 优化 softmax、exp 或反量化。 Scaling LLM TTC 报告混合精度 GEMM 加速 19.0×、softmax 加速 2.2×[14]。 使用近似方案时,应同时评估数值误差和任务精度。
- 量化格式与硬件布局对齐:采用符合 NPU 访存模式的 tile 量化,减少布局转换[14]。
- 降低归约与重标定频次:参考 VFA 的 key-block 重排与 running max 固定策略[13], 或 FlashAttention-4 的条件 rescale[12],减少可避免的 rowmax 与 rescale。
- 合并向量遍历:在布局、依赖与精度允许时,将反量化、布局转换和结果后处理组合执行, 降低重复遍历与中间存储开销。
除 LLM 外,可参考 Rake 研究覆盖的 HVX 负载,包括滤波、Sobel、dilation、色彩校正、 softmax 和 normalization,以检验方法的适用范围[20]。
3.4 D:生产者—消费者链的纵向融合
纵向融合通过保留中间结果的片上局部性,减少 DDR 与 VTCM 之间的重复搬运。 Hexagon 上的实例包括 attention 输出更新与归一化: 在分块执行过程中完成, 随后进行最终归一化;GDN 分块实现将多个递推阶段组织在同一设备执行流程中。 Hexagon-MLIR 则通过 megakernel 改善 TCM 数据局部性[17]。
该机制受到操作数布局和存储容量限制。HMX 操作数需采用特定布局并驻留 VTCM;保留更多 中间结果可能增加 VTCM 占用,并限制 tile 大小或可并发任务数。跨 tile 归约还可能引入额外 同步与状态存储,不能直接套用针对逐元素算子链的融合方案[15]。
当中间张量读写占据显著执行时间时,D 具有较高优化价值[15]。小 batch、大模型或长上下文 可能表现为 memory-bound,但仍需区分权重加载、KV 访问与中间激活流量;只有被融合消除的 那部分流量,才能计入 D 的直接收益。
3.5 E:执行与协调开销摊销
对于多个小算子,可通过合并执行入口、复用计算图、地址映射和缓冲区,减少主机—设备交互 及映射重建成本。多帧或多流的小算子也可在满足时延约束的前提下合并 dispatch。 Hexagon-MLIR 的自动编译与 megakernel 为此类优化提供了工具链基础[17]。
实现可行性取决于后端的可编程程度。若应用只能调用封装的 QNN graph binary,无法控制 内部 kernel、线程或临时存储,则不能据此假设两个 binary 可以在线融合。 具备 DSP 执行控制能力的后端更适合验证此类原型。
对无数据依赖的 kernel,E 可提供独立于数据复用的收益;若其资源特征互补,A 也可能同时 生效。若现有运行时已充分支持并发,则应测量融合在该基线之上的增量。 Orion 的干扰感知协同调度为评估调度收益提供了对照依据[6]。
4. 后续:执行版本与任务配对的联合优化
A–E 之间存在耦合。当 HMX 空闲而 HVX 饱和时,B 可能降低向量瓶颈;若其他任务已占用 HMX,将同一运算保留在 HVX 则可能减少矩阵资源争用。因此,可为同一算子保留多个执行版本, 并联合选择执行单元、配对任务和资源配置:
对于具有时延约束的多任务负载,优化目标应是约束下的系统吞吐。某个版本即使单任务执行 略慢,也可能通过降低紧缺资源的占用,提高其他任务按时完成的比例。端到端约束可写为:
其中,等待配对的时间也属于优化成本,应与执行阶段的收益共同计入决策。
保留依赖与同步约束] B -- 否 --> C[分析阶段资源特征
HVX / HMX / VTCM / DMA / 时长] C --> Q{是否具有资源互补性?} Q -- 否 --> F[评估机制 B/C/E
迁移 / 削减 / 开销摊销] Q -- 是 --> G{是否存在满足时延约束的配对?} G -- 否 --> F G -- 是 --> H[机制 A: 复合执行
保留独立完成状态] H --> I[联合选择执行版本
任务配对与 tile 配置]
5. 证据范围与待验证问题
以下判断区分已有方法或实现证据,与尚需在 Hexagon 上验证的性能结论。 “未发现”仅指本文纳入的公开资料,不构成对全部相关研究的排除。
| 命题 | 机制 | 已有依据 | 证据范围与限制 |
|---|---|---|---|
| 部分 HVX 工作可迁移至 HMX | B | FlashAttention-T[10]、attention 缩放与归一化、reduction/scan[11]、GDN 分块实现 | 存在方法与实现依据;收益依赖负载、布局和资源占用 |
| 工作削减是向量瓶颈的重要优化方向 | C | VFA[13]、FlashAttention-4[12]、移动 NPU LUT 方案[14];Rake 提供扩展负载[20] | 相关负载中已有验证;推广至其他算子需单独评估 |
| 独立的向量与矩阵任务可通过横向融合并发执行 | A | Tacker/Aker[1][2]、HFuse[3]、POD-Attention[4] | GPU 上已有验证;尚需证明 Hexagon 上的可行性与收益 |
| 纵向融合可减少中间张量的片外访问 | D | DeepFusionKernel[15]、Diffuse[16]、SYCL[18]、Hexagon-MLIR[17] | 存在充分的方法依据;受依赖、布局和片上容量约束 |
| Hexagon 上独立 HMX/HVX/DMA 任务的通用横向调度与收益隔离 | A | 本专题纳入的资料尚未确证完整方案;QNN 已有部分后台并发能力 | 见平台约束,需先建立目标后端的现有并发基线 |
| 融合在充分并发基线之上仍有显著增量收益 | A/E | Orion[6] 提供协同调度参照 | 尚缺针对 Hexagon 的对照实验 |
向量与矩阵任务的横向融合已有 GPU 研究基础。Hexagon 上的研究贡献需要具体说明: 其执行、布局和存储约束如何影响已有方法的适用性,所提出的任务编排解决了哪些问题, 以及相对现有并发调度、shape tuning 和 attention 打包方案获得了何种增量收益。
6. 按机制隔离实验收益
一期先采用四组对照:现有串行、现有最佳并发、单入口内部串行、单入口内部并发。 用共用实现的屏障开关分离 A 资源互补与 E 入口合并,并同时记录各任务完成时间、引擎时间线、 VTCM 占用与 DDR 竞争。后续引入 B/C 版本选择、D 纵向复用或动态调度时,逐项增加消融; 这些变化不能混入一期的内部重叠收益。
源码与提交
本文涉及的 llama.cpp Hexagon 后端实现统一固定至提交
b9acf138
(b9acf138a1e28ce1fc23b5a4fc4b12444b50f7ea)。以下链接均指向已核查的代码行:
hmx-queue.c:按顺序执行 HMX 任务的 QuRT 工作线程与资源锁;hmx-queue.h:异步提交;完成等待与 FIFO 取回。matmul-ops.c:矩阵乘的异步流水分支,包含权重与输出双缓冲;hmx_mm_2d_f32()为该执行路径的入口。flash-attn-ops.c:QK、输出更新与 HVX softmax 的交错执行;hmx-fa-kernels.h中的对角缩放与 最终归一化采用 HMX 矩阵运算。work-queue.c:调用线程参与执行,并在所有子任务完成后返回。htp-ctx.h:共享队列、DMA 与 VTCM 状态的定义。gated-delta-net-ops.c:GDN 的分块执行、HMX 矩阵运算与 HVX 阶段调度。
相关 PR:
参考文献
[1] ZHAO H, CUI W, CHEN Q, et al. Tacker: tensor-CUDA core kernel fusion for improving the GPU utilization while ensuring QoS[C]//Proceedings of the 2022 IEEE International Symposium on High-Performance Computer Architecture (HPCA). 2022: 800–813. https://doi.org/10.1109/HPCA53966.2022.00064
[2] ZHAO H, DENG J, CUI W, et al. Adaptive kernel fusion for improving the GPU utilization while ensuring QoS[J]. IEEE Transactions on Computers, 2025, 74(2): 386–400. https://doi.org/10.1109/TC.2024.3477995
[3] 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
[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] SHAH J, BIKSHANDI G, ZHANG Y, et al. FlashAttention-3: fast and accurate attention with asynchrony and low-precision[C]//Advances in Neural Information Processing Systems (NeurIPS). 2024. https://arxiv.org/abs/2407.08608
[6] STRATI F, MA X, KLIMOVIC A. Orion: interference-aware, fine-grained GPU sharing for ML applications[C]//Proceedings of the Nineteenth European Conference on Computer Systems (EuroSys). 2024: 1075–1092. https://doi.org/10.1145/3627703.3629578
[7] ZHANG J, ZHENG Z, WU F, et al. EStream: fast and memory-efficient MoE prefill through expert virtualization on mobile NPUs[J/OL]. arXiv preprint arXiv:2609.06551, 2026. https://arxiv.org/abs/2609.06551
[8] LI M, ZOU H, HAN T, et al. BigMoMo: efficient inference of large-scale MoE with speculative decoding on mobile devices[J/OL]. arXiv preprint arXiv:2609.14643, 2026. https://arxiv.org/abs/2609.14643
[9] WANG T, SUN Y, REN J. Efficient on-device diffusion LLM inference with mobile NPU[J/OL]. arXiv preprint arXiv:2606.13740, 2026. https://arxiv.org/abs/2606.13740
[10] XU J, WEN Y, BI J, et al. FlashAttention-T: towards fully tensorized attention by exploiting tensor-vector parallelism[C]//Proceedings of the 31st ACM SIGPLAN Annual Symposium on Principles and Practice of Parallel Programming (PPoPP). 2026. https://doi.org/10.1145/3774934.3786425
[11] DAKKAK A, LI C, XIONG J, et al. Accelerating reduction and scan using tensor core units[C]//Proceedings of the ACM International Conference on Supercomputing (ICS). 2019: 46–57. https://doi.org/10.1145/3330345.3331057
[12] ZADOURI T, HOEHNERBACH M, SHAH J, et al. FlashAttention-4: algorithm and kernel pipelining co-design for asymmetric hardware scaling[J/OL]. arXiv preprint arXiv:2603.05451, 2026. https://arxiv.org/abs/2603.05451
[13] SUN Y, LI Y, ZOU Z, et al. VFA: relieving vector operations in flash attention with global maximum pre-computation[J/OL]. arXiv preprint arXiv:2604.12798, 2026. https://arxiv.org/abs/2604.12798
[14] HAO Z, WEI J, WANG T, et al. Scaling LLM test-time compute with mobile NPU on smartphones[J/OL]. arXiv preprint arXiv:2509.23324, 2025. https://arxiv.org/abs/2509.23324
[15] ZHANG Z, MO Z, ZHAO Y, et al. Deep kernel fusion for transformers[C]//Proceedings of the 64th Annual Meeting of the Association for Computational Linguistics (ACL). 2026: 166–173. https://doi.org/10.18653/v1/2026.acl-short.15
[16] YADAV R, SUNDRAM S, LEE W, et al. Composing distributed computations through task and kernel fusion[C]//Proceedings of the 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 2025. https://arxiv.org/abs/2406.18109
[17] ABSAR M J, BASKARAN M, SHARMA A, et al. Hexagon-MLIR: an AI compilation stack for Qualcomm's neural processing units (NPUs)[J/OL]. arXiv preprint arXiv:2602.19762, 2026. https://arxiv.org/abs/2602.19762
[18] PÉREZ V, SOMMER L, LOMÜLLER V, et al. User-driven online kernel fusion for SYCL[J]. ACM Transactions on Architecture and Code Optimization, 2023, 20(2): 1–25. https://doi.org/10.1145/3571284
[19] GUPTA S R, PAPADOPOULOU N, PERICÀS M. FlashAttention for scalable vector architectures[J/OL]. arXiv preprint arXiv:2608.18656, 2026. https://arxiv.org/abs/2608.18656
[20] AHMAD M B S, ROOT A J, ADAMS A, et al. Vector instruction selection for digital signal processors using program synthesis[C]//Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 2022: 1004–1016. https://doi.org/10.1145/3503222.3507714
© 2026 Yang Huan · yanghuan9812@qq.com