返回文章列表
推理与部署

Helion 接入 vLLM:用统一 GEMM 内核探索更高效的推理后端

阅读约 3 分钟

导语

在大语言模型推理中,量化线性层往往直接决定吞吐与延迟。vLLM 已经为 FP8、INT8、INT4 和 NVFP4 等格式接入 CUTLASS、DeepGEMM、FlashInfer 等优化库,但不同模型和输入形状对矩阵乘法的需求并不相同。PyTorch 博客介绍了一项新尝试:把 Helion 接入 vLLM 的 linear backend,用更高层的内核描述和自动调优,减少为每种形状手工编写内核及调度规则的工作。

核心做法

  • 一个实现覆盖多种算法。 Helion 的统一 GEMM 可以通过可调参数覆盖标准 GEMM、Split-K 和 Swap-AB。前者适合常规情况,Split-K 能在 M 或 N 较小时增加并行度,Swap-AB 则通过转置计算改善小 M 场景下的 GPU 利用率。
  • 按形状选择配置。 自动调优器不仅搜索内存布局、切块和调度等底层参数,也会选择算法变体。这样,系统不必完全依赖固定启发式规则,而是可以针对具体工作负载寻找配置。
  • 聚焦 Hopper 与量化 GEMM。 当前实现主要使用 Helion 的 Triton 后端,支持 FP8 动态量化、W8A8 INT8 和 Block-FP8。团队也报告称,Helion 的 CuteDSL 后端在 Blackwell 上的初步 GEMM 结果具有竞争力,但相关扩展仍取决于后端成熟度。
  • 采用混合调度。 在 Hopper GPU 上,Helion linear backend 结合按形状调优和 hybrid dispatch,在所评估模型中超过了 vLLM 默认的 CUTLASS 与 DeepGEMM 后端,部分工作负载的端到端吞吐提升超过 10%。这些结果属于特定硬件、模型和测试范围,不能直接视为所有部署环境的普遍收益。

代价与限制

Helion 并没有消除内核优化的成本,而是把成本转移到更系统化的搜索过程。细粒度 AOT 调优可能需要数小时;vLLM 启动阶段的 CUDA Graph capture 会触发 JIT 编译,从而增加冷启动时间,缓存编译产物后温启动可明显缓解。若内核运行在 CUDA Graph 覆盖范围之外,额外的 CPU 调度和启动开销还可能抵消部分 GPU 收益。

此外,若上游为热门模型预置大量调优配置,维护、验证和持续更新都会变得困难。换言之,性能、易用性和可维护性之间存在难以回避的三角权衡:更高的工作负载专用性能,通常意味着更长的调优时间或更多配置管理工作。

意义与影响

这项工作展示了推理框架内核开发的一种方向:把算法选择、硬件适配和参数搜索统一纳入 DSL 与自动调优系统,让部署方有机会针对自身模型继续优化,而不必从零掌握复杂的 GPU 内核开发。它更适合形状相对稳定、能够使用 CUDA Graph、并且愿意承担一次性调优成本的服务场景。对于频繁变化的请求、强调快速启动的应用,传统预优化后端仍可能更实用。Helion 的价值最终取决于调优收益能否覆盖编译、调度和维护成本。

PyTorch Blog

评论

正在确认登录状态……

正在加载评论……

相关文章

CCTest · Blog
RouteFM:让大模型路由从反复训练走向“一次预训练,随处路由”
推理与部署
cctest.ai
推理与部署

RouteFM:让大模型路由从反复训练走向“一次预训练,随处路由”

RouteFM提出将LLM路由视为一种可迁移的基础能力:路由器不再依赖固定模型名称,而是通过少量行为观测判断匿名模型的特长。实验显示,冻结后的路由器能够跨任务、模型池、模态和上下文预算迁移。

阅读全文
CCTest · Blog
Wavefront Decoding:让循环语言模型的推理解码“并行起来”
推理与部署
cctest.ai
推理与部署

Wavefront Decoding:让循环语言模型的推理解码“并行起来”

循环语言模型通过反复执行同一权重共享模块提升有效深度,却也带来逐 token、逐循环的延迟瓶颈。Wavefront Decoding利用中间循环状态进行自推测,并把不同位置、不同深度的计算组织成对角波前,在无需额外训练的情况下提升解码吞吐。

阅读全文