AI 基础设施新范式:算子库、编译器与RISC-V DSA的融合创新

一、AI基础设施的现状与困境

过去十年,AI 模型性能的提升几乎完全依赖两条主线:更大的数据和更强的算力。然而,当算力增长开始遇到物理瓶颈,模型规模却持续以指数级增长时,AI 的基础设施面临前所未有的复杂化和碎片化挑战。从训推框架、算子库、编译器到硬件平台,各层之间缺乏协同,成本高、效率低的问题日益显现,这也成为制约行业进一步发展的核心障碍。

算力 的“塔式堆叠”与基础设施碎片化

如今的 AI 基础设施更像一个“塔式堆叠系统”:模型 → 框架 → 算子库 → 编译器 → 硬件。每一层都在高速迭代,但生态的碎片化导致每一层AI infra工具都要维护多套实现,带来工程量的爆炸增涨。

首先是框架多样性。主流框架包括 PyTorch、TensorFlow、JAX等,它们在算子颗粒度、调度方式、自动微分机制、执行模型(比如PyTorch的 Eager 或 Graph 模式)上各不相同。对于AI Infra工具来说,这意味着无法复用设计,每套算子库、编译器来和runtime都需要独立维护,任何一次 API 或 IR 的变动都可能引发连锁适配成本。 除了框架本身的差异,模型序列化与交换格式的多样性也给 AI 基础设施带来额外挑战。不同框架生成的模型文件(如 PyTorch 的 .pt / .pth、TensorFlow 的 SavedModel / .pb、JAX 的 .msgpack文件)在表示计算图、权重存储和执行签名上各不相同,无法直接互通。为了解决跨框架兼容性问题,ONNX 这种通用中间格式应运而生,它试图统一不同框架的计算图和权重表示,但即便是 ONNX,也可能在动态 shape(Shape Infer)、算子版本、算子颗粒度、扩展操作上存在兼容性差异。而如何在兼容不同模型文件的基础上,完整地保留算子颗粒度和语义,实现更好的图优化,这也是模型编译器解决的问题之一。

其次是算子库的指数级膨胀。早期算子库(如 cuDNN、MKL-DNN)主要围绕卷积、GEMM 等基础算子展开,相对稳定。然而自 Transformer 问世后,算子组合变得高度动态化。例如:

  • Attention:Multi-Head → FlashAttention → FlashAttention2 → FlashAttention with Paged KV

  • FFN:标准 FFN → SwiGLU → Gated FFN → 分块 FFN

  • LayerNorm:LayerNorm → RMSNorm → Pre-RMSNorm → 混合归一化方式

每一次结构迭代都产生新的 kernel 需求,并且这些 kernel 需要针对不同硬件进行手工优化。这也解释了为什么算子库维护成本在过去十年内提升了一个数量级以上。

再次是算子库维护成本的不可持续性。在传统模式下,硬件厂商通常需要为不同AI框架和推理引擎分别维护一套算子库以兼容不同算子的定义和颗粒度,比如 PyTorch、TensorFlow、JAX、onnx等,如果支持 BF16/FP8/INT4,则需要多套变体。每一个新模型架构(如 Mixtral、DeepSeek、LLaMA3、Gemini)都有可能引入新的算子或者优化已有算子实现, 触发一次算子库的大规模更新。

最后是硬件加速卡爆炸式增长带来的挑战。从 2022 年开始,AI 算力市场进入“百花齐放时代”,新硬件层出不穷:GPGPU、ASIC 推理卡、FPGA 加速器、RISC-V DSA、 DPU、TPU 、NPU等。每一款新架构都意味着训推框架,算子库和编译器必须重新适配,这种速度甚至超过 Transformer 算子的迭代速度,形成了行业痛点。

Transformer及大模型的“架构冲击”

Transformer 架构的优雅与灵活性,在带来模型性能爆发式增长的同时,也对基础设施提出了沉重压力。算子组合不再稳定,而是呈现高度动态化:FlashAttention 系列从 IO-bound 到 compute-bound,PagedAttention 为支持外部 KV cache,attention kernel 的结构不断变化;MoE(Mixture-of-Experts)带来的动态路由进一步增加了算子非确定性;环形注意力、块稀疏注意力、滑动窗口注意力、分组 Query、解耦 QK scaling、RoPE 插件以及辅助权重机制层出不穷。每一次论文的创新都需要新增 kernel,而传统算子库难以及时跟进,因此常出现框架层 hack、性能不达标,甚至“卡死”在某个模型版本的情况。

更严峻的是模型变化速度远超硬件和编译器的演进速度。以 LLaMA 系列为例:LLaMA → LLaMA2 → LLaMA3,FlashAttention 从 1 → 2 → 3,LLM,MoE 模型不断演化,而新硬件设计周期通常需要 2.5~4 年,一个编译器项目从起步到稳定也需要 3 年以上。这种速度差意味着算子库始终处于追赶状态。

二、算子库的演进与开发困境

随着模型复杂度指数级增长和硬件体系的快速分化,传统算子库开发体系已难以满足 AI 时代的需求。这也是为什么自 2018 年起,AI 编译器体系和“算子 DSL”体系陆续兴起,它们标志着算子开发从“手工艺时代”向“自动化时代”的必然演进。

传统算子库的瓶颈: CUDA 垄断与手工调优的极限

过去十多年,AI 计算几乎完全建立在 CUDA + cuDNN/cuBLAS 之上。NVIDIA 的封闭生态虽然带来了极致性能,但也形成了行业级锁定,并限制了算子开发效率。一个高性能 CUDA kernel 的优化通常深度绑定于 GPU 架构:SM 结构、warp 调度、bank conflict 规避、寄存器布局、内存层级以及 CUDA Runtime 语义都直接决定了 kernel 的写法。换句话说,每一种新硬件、每种数据类型甚至每种调度策略,都意味着必须重新写一套算子库,开发成本几乎线性甚至指数级增长。传统手写 kernel 最大的问题并非单个 kernel 的难度,而是算子组合数量的指数级爆炸。例如“Matmul + ReLU”在基础情况下很简单,但随着模型复杂度增加,算子组合可能达到数千上万种,每一种组合可能需要一个新的 fused kernel,每种数据类型都需重写,每种 GPU 架构都需重新调优,最终导致算子库不可持续、不可扩展,无法跟上大模型发展的速度。

与此同时,算子开发本身效率极低。一个高性能 CUDA kernel 往往需要手动选择 tile 大小、double buffering、访存优化、warp-level reduce 与 shuffle,并针对不同 batch size、shape、dtype 重复优化。这种工匠式的开发方式不仅成本高,而且完全不具备普适性和可复用性。更重要的是,创新速度被算子库拖累:算法发明速度远快于算子库更新速度,大量新模型在发布初期只能使用低效版本,框架可能 fallback 到 eager 模式,导致性能与模型潜力之间出现巨大差距。这种现象在 Transformer 架构爆发后尤为明显,行业普遍感受到算子库体系“跟不上”的压力。

新算子 DSL 的诞生:用“描述式编程”取代手工优化

为了摆脱手写 kernel 的局限,行业开始探索新的算子开发方式,算子 DSL(Domain Specific Language)应运而生。DSL 的设计初衷非常明确:开发者描述“要做什么”,编译器决定“怎么做”。它不是“更简单的 CUDA”,而是一种更抽象的算子描述语言,目的是将算子逻辑与硬件实现彻底解耦。目前,代表性的 DSL 包括 Triton、TileLang、CuteDSL和Mojo等,也有在Triton的基础上进行high level封装的NineToothed(九齿),以及支持特定硬件性能扩展的Gluon。这些 DSL 的共同目标是让算子开发更加简单、高效,同时具备跨平台能力,隐藏掉大部分的硬件细节,颠覆传统的算子开发模式。

Triton:新时代算子 DSL 的代表

在讨论算子开发模式如何从传统工程化流程演化为更高层、更抽象的表达方式时,Triton 是一个无法绕开的里程碑式案例。Triton 是目前最成功的 GPU 算子级 DSL,其核心价值在于易用性、高性能和显著行业影响。Triton 的诞生并不是偶然,而是深深根植于行业对“更高生产力模型开发方式”的渴望。过去十多年,CUDA 一直是高性能 AI 内核开发的事实标准,但它也把开发者深深绑定在 NVIDIA 专属的软件和硬件生态里。要写出高性能 GPU 内核,开发者必须深度理解 CUDA 编程模型、线程调度、内存层级、Warp 行为等各种硬件细节,这使得算子开发成为一项高度专业化、门槛极高的工作。与此同时,这些 CUDA 内核无法跨硬件迁移,不仅限制了行业的创新速度,也让整个 AI 算力基础设施走向封闭。

正是在这样的背景下,OpenAI 发布了 Triton——一个面向深度学习算子的高性能 DSL(Domain Specific Language)。Triton 的核心思想非常简单却极具颠覆性:用 Python 写 GPU **Kernel,让编译器自动把高层逻辑翻译成能跑满硬件性能的底层代码。**它并不是在语法上做“糖衣包装”,而是在编译体系里做了输入/输出布局、访存模式、并行度策略、自动Tiling等底层优化的自动化,从而让开发者解放出来,把精力从“写线程块”、“调度指令顺序”转向“写算法”。

更重要的是,Triton 展示了 DSL 在算子开发中的一个关键价值:让算法表达与硬件实现解耦。传统 CUDA 内核往往是为某个特定 GPU 架构定制的,但 Triton 让开发者只需要关注算法的算子级描述,具体的访存排布、线程模型、Instruction Scheduling 都由编译器来适配不同硬件。这意味着,一旦 DSL 与编译器生态成熟,开发者写一次算子,未来就可以在不同 GPU、不同 AI 加速器甚至未来不同 ISA 架构上复用。

OpenAI 在官方博客中强调过,Triton 的性能已经能够超过部分专业工程师手写的 CUDA 内核,这背后是一个趋势:**现代 AI 算子的性能瓶颈越来越来自编译器优化,而非人工调参。**这一点也说明了 Triton 成为各类AI框架,推理引擎的算子开发基础组件的根本原因——它代表了从“硬件绑定”转向“硬件解耦”的新时代。

目前,Triton已经被广泛应用并展现了其核心价值:在 PyTorch 2.x 中,Triton 替代了大量手写 CUDA,通过 JIT 和 AutoTune 获取最优性能;在 vLLM 推理引擎中,PagedAttention、Softmax、LayerNorm、KV cache 优化都依赖 Triton实现高性能计算;在 FlashAttention 系列中,Triton 提供快速算子迭代基础,使研究社区能够在几小时内完成高性能原型开发,解放了AI算法工程师开发新算子的巨大工程量,降低了算子开发的上手门槛,也助力新的模型架构的开发、验证、训练和迭代速度。

三、RISC-V DSA(Domain-Specific Architecture):AI 硬件的新形态

David Patterson(RISC-V 架构之父)在A New Golden Age for Computer Architecture: History, Challenges and Opportunities指出,这是体系结构的黄金年代。随着晶体管密度增长放缓,硬件性能单纯依靠摩尔定律已经难以提升,换句话说,“算力的免费午餐”吃完了。领域专用架构 (Domain-Specific Architectures, DSA),开放 ISA / 开放架构 (Open Instruction Sets / Open Architecture)迎来了新机会。

RISC-V:AI 硬件时代真正的开放架构基础

RISC-V 是一种开源、精简指令集架构(ISA),起源于学术界,并由全球产业共同推动发展。它的核心理念是“简单、开放、可扩展”,这使得它与传统封闭的 ISA 完全不同:不依赖昂贵授权,也不受限于特定厂商。基础指令集保持精简且稳定,同时允许厂商根据需要自由扩展自定义指令,这为硬件创新提供了极大自由。近年来,RISC-V 已经从嵌入式设备扩展到高性能 AI 加速器,成为全球增长最快的芯片架构之一。

RISC-V 在 AI 加速领域的潜力尤其突出,得益于 RISC-V Vector(RVV)等扩展的出现。RVV 支持可变向量长度,允许在硬件层面灵活映射不同大小的张量计算,各家厂商也在积极尝试各种Matrix扩展,能够针对深度学习中的核心算子(如 GEMM、Attention、卷积等)进行高效加速。这种可扩展性意味着硬件厂商可以在不受传统 CPU/GPU 约束的前提下,自由设计面向 AI 的特定功能。最近,Google 的 Coral NPU 全栈开源项目,完整的提供了一个包含标量核、向量执行单元和矩阵执行单元的RISC-V SoC的软硬件实现,提供了完整的 AI加速能力,更是证明了RISC-V在AI领域的优势。总的来说, RISC-V 不仅是处理器 ISA,更成为可定制 AI 加速硬件的基石。

DSA:探索AI硬件的新形态

在 RISC-V 的开放基础上,各类厂商开始尝试构建面向 AI 的专用架构(DSA, Domain Specific Architecture)。这些架构的共同特点是高度可定制、可扩展,并能够针对特定 AI 任务最大化性能。例如 Tenstorrent 的处理器采用 Dataflow 架构,通过动态调度算子数据流,实现高吞吐量和低延迟的矩阵计算;而主流 AI 加速卡则普遍采用多 tile 设计、多级 SRAM 层次和专用片间互联,为大规模模型训练和推理提供弹性资源。类似的思路也出现在 Edge NPU、云端 ASIC以及 FPGA 加速器中。

这意味着 AI 硬件不再局限于固定 GPU 结构,而是可以呈现高度异构、可协同的计算体系,每一款新硬件都有可能成为未来 AI 加速器的新形态。通过这种方式,RISC-V 成为新一代 AI 基础设施的公共语言和创新底座,为整个生态提供了前所未有的灵活性和扩展空间。

四、 编译器:AI 基础设施的关键枢纽

“摩尔定律已经失效,现在是编译器的黄金年代。”

——Chris Lattner(LLVM、MLIR、Swift之父)

当硬件性能增长不再能依靠晶体管密度的提升时,软件体系——成为了持续提升算力效率的重要途径。过去十年间,硬件创新从“摩尔加速”转向“架构加速”;与此同时,AI模型从卷积堆叠演化为复杂的算子图结构,传统的手工优化与静态库方式已无法跟上这种复杂性。这意味着性能的瓶颈从硬件制造转向软件编译, 算力增长的核心路径正在从单纯的硬件优化转向软硬件协同设计与优化。在 AI 时代,真正的算力竞争不仅是编译器的竞争,更是编译器与硬件架构协同设计、共同演化的竞争。

在算子库面临指数级复杂度增长、RISC-V 等新硬件架构加速涌现的背景下,AI 软件栈开始出现一个前所未有的核心角色——编译器。传统软件时代,编译器只是“代码到机器指令的翻译器”;而在 AI 时代,编译器已经升级为贯穿算法与硬件之间的“智能调度系统”,承担着整个算力栈的优化枢纽作用。

AI编译器的路线目前可以大致分为两类:一类是以IREE为例的模型编译器或者说图编译器,关注在静态结构计算图下的优化,例如kernel融合,模型中算子的实现依靠编译器进行算法展开;还有就是例如Triton编译器的算子DSL编译器,关注抽象算子语言描述。在本系列文章中,我们重点介绍以Triton为主的算子编译器,未来我们也会介绍模型编译器的发展和优化,甚至是实现图编译器和算子编译器的结合,让模型的编译既能拥有图级别的优化效果,又能够拥有灵活的算子实现。

编译器的重要性并不是凭空出现,而是由三件事共同推动:

  • 算子库无法再承担跨模型、跨硬件的爆炸性适配工作

  • RISC-V DSA 等新架构需要“无厂商绑定”的通用软件入口

  • 现代硬件的复杂性已经远超人力手工调优能力

在这种背景下,编译器成为连接创新模型与快速变化硬件之间的唯一可靠桥梁。

上承算子 DSL :模型创新的加速器

为了让 DSL 层描述的算子真正落地到多样化的新硬件并获得接近理论峰值的性能,编译器必须在中间承担大量复杂而关键的优化工作。

DSL的设计目标是对算子进行high level的抽象表示,只关注算法实现,不需要关注硬件细节。所以编译器需要做的就是将一个硬件无关的代码实现最终映射到不同硬件的加速指令。它不仅需要对算子逻辑进行精细的融合优化,如Affine transformation、tiling、fusion、unroll,以构造符合硬件执行模型的调度结构;还要完成数据布局的自动重排,包括 layout 转换、packing、memory swizzling 等操作,使数据访问模式最大化命中Cache。与此同时,编译器必须管理硬件的不同内存层级,此外,它要将高层张量运算自动向量化,并进一步 tensorize 到特定硬件的矩阵单元或专用指令上,以充分发挥算力。寄存器分配与溢出管理同样至关重要,编译器需要在高寄存器压力与访存开销之间找到最佳平衡。最后,通过自动调优系统,编译器能够在庞大的调度搜索空间中自动探索 tile 大小、并行策略和访存模式,从而得到比人工调参更强的性能解。依靠这一整套优化能力,DSL 才真正具备跨硬件、高性能、快速演化的生命力。

下接多样化硬件:RISC-V 时代的统一入口

过去 AI 软件栈长期受制于 CUDA 生态,所有高性能优化几乎都必须由工程师手写在 GPU kernel 中。然而如今的硬件形态已经完全不同:TPU、NPU、XPU、DSP、Tenstorrent’s RISC-V DSA等各类可定制 DSA,边缘端 NPU,云端 ASIC,以及不断演进的 FPGA 加速器……硬件类型呈指数级增长,架构差异巨大。面对这样的生态,软件层根本不可能为每一种硬件重新构建一整套算子库,传统依赖手写 kernel 的方式已经无法支撑。

正因如此,编译器成为新硬件进入 AI 生态的唯一可行入口。以 RISC-V 为代表的开放 ISA 架构可以通过统一的IR中间表示承载通用计算语义,并在此基础上进行自由扩展;高层的算子 DSL 可以被编译器自动降低为不同硬件所需的最佳调度与指令序列;同一份算子描述也能够跨越差异化的指令集、并行模式和内存拓扑,实现自动适配和最优代码生成。这意味着新硬件无需再“重造 CUDA”,也能快速承载主流 AI 模型,真正具备进入生态的能力。

尤其是对于 RISC-V DSA,这一点格外关键。RISC-V 的可定制 ISA、可扩展向量和矩阵单元, DSA灵活的 on-chip SRAM 架构、多卡通信的指令拓展、以及异构加速形态,带来了前所未有的架构自由度,但也要求编译器承担更重要的角色,根据硬件架构的所有特性,完成一系列硬件特定优化,包括指令选择、vectorize/tensorize 匹配、tile/blocking 规划、memory layout 自动优化、memory space管理、Sram buffer生命周期管理、软件pipeline调度、多卡通信调度等深度硬件特化流程。新的硬件架构会带来区别于传统CPU、GPU的内存层级设计,给编译器带来新的内存管理挑战,如何使用有限的SRAM;目前广泛的AI加速卡的多加速核设计也带来了新的新的tile策略变化,常见AI加速卡的并行能力优于CPU但稍弱于GPU,导致算子Block切分大小也不同;还有充分利用硬件特性的各种优化,包括异步load/store的硬件实现需要软件pipeline调度的优化充分发挥硬件特性等等。只有强大的编译器基础设施,才能把这些硬件可扩展性真正转化为性能红利,充分发挥不同硬件的特性。否则,RISC-V 在 AI 时代的潜力将无法发挥。

五、算子库 × 编译器 × RISC-V DSA:迈向开放式 AI 基础设施

在前面的章节我们看到算子 DSL 的出现,使得算子开发与硬件彻底解耦,为新硬件进入 AI 市场提供了前所未有的机会。在过去,任何一个算子想要在新硬件上运行,都需要进行大量重复的手工适配工作,包括重写 kernel、重新设计 tiling 策略、调整内存布局、映射线程以及完成一系列性能调优逻辑,这几乎相当于重造一个 CUDA 生态。因此,过去十年中几乎没有新硬件厂商能够真正突破 CUDA 的垄断。如今,随着通用算子 DSL 的成熟,开发者可以在硬件无关的算子抽象层上进行算法开发,而编译器则负责将算子映射到不同的硬件架构上。这样的模式让 RISC-V DSA 不再被庞大的软件生态成本束缚,从而具备了切入 AI 市场的可行性。

FlagGems 的出现更是验证了这一模式的可行性。FlagGems 是使用Triton实现的高性能通用算子库,旨在为大语言模型提供一系列可应用于PyTorch 框架的算子,加速模型的推理与训练。作为新一代算子库,它提供了一套硬件无关的算子实现,解决了硬件厂商重复实现算子开发的问题,它只关注算法逻辑,而底层的性能优化和硬件适配完全由 Triton 编译器和 AutoTuning 系统完成。算子代码可以直接迁移到 RISC-V DSA 后端,而无需为每个新硬件重写库或手工调优。开发者从繁琐的底层实现中解放出来,软件复杂度被显著降低,研发效率大幅提升。这种模式不仅改变了算子开发方式,也为未来硬件生态的开放提供了坚实基础。

在这一新生态中,算子库、编译器与 RISC-V DSA 三者的协同作用显得尤为重要。算子库提供标准化的算法实现,而编译器负责将这些算法映射到不同硬件的指令与执行单元上,实现自动化调度和优化。RISC-V DSA 则提供了开放、可扩展的执行平台,使得算法逻辑能够在多种硬件上高效运行。结合 Triton 的开源算子库 FlagGems,我们看到了一个理想的未来形态:开发者只需使用 DSL 编写高层算子逻辑,编译器通过自动 tile、vectorize、memory coalescing 和 AutoTuning 等优化生成针对不同 DSA 的高性能执行代码,从而实现“一份算子,多平台复用”。这一流程彻底降低了新硬件厂商构建软件生态的成本,也极大缩短了新算子原型验证的周期。对于AI模型

当然,DSL的潜在挑战仍然存在。首先,Triton 并非完全硬件中立,目前仅支持 NVIDIA 与 AMD 后端,甚至说Triton 原本就是针对 NVIDIA GPU 设计的 ,虽然 Triton 是开源的,但由于 OpenAI 对产品路线图的控制,其社区发展受到限制,外部组织的贡献面临着诸多障碍。且由于其他硬件厂商的不同版本存在不同的限制和权衡,导致其碎片化现象十分严重。这导致了Triton的语法并不完全是契合DSA硬件特性的设计,某些语法特性依然是为GPU设计的,这也意味着Triton并不一定是算子DSL的最终形态。在下一篇文章中我们会详细讲解目前百花齐放的DSL发展,而未来最终的算子计算形态究竟如何,只有时间才能告诉我们答案。

在释放硬件性能这一点上,同样仍有许多需要突破的新挑战。例如,Triton 的 核心IR设计需要支持多样化 DSA 后端,包括内存层级配置、算子指令扩展和 AutoTuning 参数,同时 MLIR Dialect 也需要统一描述矩阵指令、向量化策略、SPM/SRAM 管理、流水线调度以及特殊功能单元的操作。此外,自动指令选择(Auto-ISA Selection)与性能模型结合 AutoTuning,需要根据不同指令集和硬件特性自动选择最佳计算策略,包括 dot 与 matmul、pack 与 nopack、低精度与高精度运算、以及 tensorcore-like 与 SIMD 单元的映射。这些研究方向将直接决定算子在 RISC-V DSA 上的性能极限。面对这些挑战, 要求编译器和RISC-V DSA之间进行深度的软硬件协同优化,才能充分发挥硬件的性能优势。

总体来看,AI 软件栈正经历从 CUDA 垄断走向开放式算力平台的转型。FlagGems 与 Triton 构建了新硬件生态的基础,RISC-V DSA 有望成为下一代 AI 加速器的重要力量。后续文章我们将逐步深入介绍Triton的设计,用法以及讨论它的优缺点,同时探索Triton和RISC-V结合的性能与未来潜力。未来,我们也将持续探索不同AI编译器与RISC-V DSA 的深度融合,让开发者能够在任何硬件上快速验证算法,并充分释放新硬件的算力潜力,从而实现真正开放、灵活、高性能的 AI 基础设施。