
随着 Qwen3-Next 及后续 Qwen3.5/3.6 系列的发布,Gated Delta Network (GDN) 已成为通义千问全系列模型的核心注意力机制。从 80B 到 397A17B 的超大参数规模,再到突破 256K 的超长上下文,GDN 在提供卓越性能的同时,其计算开销在端到端训练与推理中也日益显著。

今天,阿里巴巴正式开源 FlashQLA——一个基于 TileLang 实现的高性能线性注意力算子库。FlashQLA 专为 GDN 设计,通过深度的算子融合与硬件级优化,在 NVIDIA Hopper 架构上实现了相较于主流 FLA Triton Kernel 2-3 倍的前向加速和 2 倍的反向加速。
这不仅意味着预训练成本的降低,更标志着端侧 Agentic 推理效率的重大飞跃。
核心突破:为何 FlashQLA 更快?
FlashQLA 并非简单的代码重构,而是从算法逻辑到硬件映射的全方位优化。其三大核心技术亮点如下:
1. Gate 驱动的自动化卡内序列并行
GDN 的核心特性在于其 Gate 机制带来的指数衰减性质。FlashQLA 巧妙利用这一数学特性,在以下场景中自动开启卡内序列并行(Intra-card Sequence Parallelism):
- Tensor Parallelism (TP) 场景
- 超长序列处理
- 小头数(Small Head Count)配置
通过自动并行化,FlashQLA 显著提高了 GPU SM(Streaming Multiprocessors)的利用率,避免了传统实现中因负载不均导致的算力闲置。
2. 硬件友好的代数改写
为了适配现代 GPU 的硬件特性,FlashQLA 对 GDN Chunked Prefill 的前向和反向传播流程进行了精细的代数改写。
- 精度无损:所有改写均在严格保证数值精度的前提下进行。
- 负载均衡:有效降低了 Tensor Core、CUDA Core 及特殊功能单元(SFU)的计算开销,避免单一硬件单元成为瓶颈。
3. TileLang Fused Warp-Specialized Kernels
传统的算子实现往往面临两难:要么拆分为多个独立 Kernel 导致启动开销大,要么融合为一个巨大 Kernel 导致寄存器压力高且难以并行。
FlashQLA 选择了中间路线:
- 关键融合:使用 TileLang DSL 构建几个关键的 Fused Kernel,平衡了粒度与复杂度。
- Warp Specialization:通过手动的 Warpgroup specialization 技术,实现了数据搬运、Tensor Core 计算与 CUDA Core 计算的完美重叠(Overlap)。
- 结果:最大化隐藏内存延迟,确保持续的高吞吐量计算。
性能基准:Hopper 架构下的显著优势
在 NVIDIA Hopper (如 H100/H800) 显卡上的测试表明,FlashQLA 在多场景下均展现出压倒性优势:
| 场景 | 对比基线 (FLA Triton Kernel) | 加速比 |
|---|---|---|
| 前向传播 (Forward) | 标准 Triton 实现 | 2x – 3x 🚀 |
| 反向传播 (Backward) | 标准 Triton 实现 | ~2x 🚀 |
- 预训练场景:大幅缩短训练时间,降低算力成本。
- 端侧/Agentic 推理:显著降低首字延迟(TTFT)和生成延迟,提升用户体验。
为什么选择 TileLang?
FlashQLA 基于 TileLang 构建,这得益于 TileLang 在高性能算子开发上的独特优势:
- Pythonic 语法:简化了复杂并行逻辑的描述。
- 底层控制力:允许开发者精确控制内存布局、Warp 分工和数据流,从而实现手工汇编级别的优化效果。
- 跨平台潜力:虽然本次针对 Hopper 优化,但 TileLang 的设计旨在支持多种后端,为未来适配更多硬件奠定基础。
相关导航


TrueForge

ESP32-AI

HappyHorse

RamTorch

Prezent

Napkin






