目录

github+banner-20260130 [中文版|English]

FlagTree

FlagTree 是 FlagOS 的一部分。 FlagOS 是一个面向多元AI芯片的开源、统一系统软件栈,旨在打通模型、系统与芯片层,培育开放协作的生态系统。 它支持 “一次开发,多芯运行” 的工作流,兼容多样化的 AI 加速芯片。 它释放硬件性能潜力,消除各类 AI 芯片专用软件栈之间的碎片化问题,并大幅降低大模型在多种 AI 硬件移植与维护的成本。

FlagTree 是面向多种 AI 芯片的开源、统一编译器。 FlagTree 致力于打造多元 AI 芯片编译器及相关工具平台,发展和壮大 Triton 上下游生态。 项目当前处于初期,目标是兼容现有适配方案,统一代码仓库,快速实现单仓库多后端支持。 对于上游模型用户,提供多后端的统一编译能力; 对于下游芯片厂商,提供 Triton 生态接入范例。

多后端支持

各后端基于不同版本的 Triton 适配,因此位于不同的主干分支。 各主干分支均为保护分支且地位相等,表格中所有后端均搭建了 CI/CD Runner。 有些后端适配了多个 Triton 版本,表格中仅展示最新版本。

主干分支 厂商 后端 Triton 版本 安装
main NVIDIA
NVIDIA TileIR
AMD
Enflame(燧原)
HYGON(海光信息)
Moore Threads(摩尔线程)
DAMO ACADEMY(阿里达摩院)
Huixi(辉羲智能)
MetaX(沐曦股份)
Sunrise(曦望芯科)
KLX
ILUVATAR(天数智芯)
nvidia
tileir
amd
enflame
hcu
mthreads
damoacademy
rpu
metax
sunrise
xpu
iluvatar
3.6 install nvidia
install tileir
-
install enflame
install hcu
install mthreads
-
install rpu
install metax
install sunrise
install xpu
install iluvatar
triton_v3.5.x Huawei Ascend(华为昇腾) ascend 3.5 install ascend
triton_v3.3.x ARM China(安谋科技)
Tsingmicro(清微智能)
ARM64 cpu
x86_64 cpu
aipu
tsingmicro
cpu
triton-shared
3.3 install aipu
install tsingmicro
install cpu
-
triton_v3.2.x Cambricon(寒武纪) cambricon 3.2 -

FlagTree 的扩展组件当前在部分后端可用:

主干分支 后端 Triton 版本 扩展组件
main nvidia
enflame
3.6 TLE-Lite
TLE-Struct GPU
TLE-Raw
HINTS
main mthreads
sunrise
hcu
iluvatar
3.6 TLE-Lite
TLE-Struct GPU
main metax 3.6 TLE-Lite
triton_v3.5.x ascend 3.5 TLE-Struct DSA
FLIR
HINTS
triton_v3.3.x tsingmicro 3.3 TLE-Lite
TLE-Struct DSA
FLIR
triton_v3.3.x aipu 3.3 FLIR
HINTS

TLE(Triton Language Extensions)简介

如果要在 nvidia 后端使用 TLE 语言扩展,请使用 main 分支。 其他后端的 TLE 支持分支详见上面的表格。

Triton 在算子开发效率方面表现突出,但在多元 AI 芯片适配和更深层性能调优场景下,往往需要对分布式执行、内存访问模式和硬件相关原语提供更显式的控制。 TLE 以分层方式扩展 Triton,在保持现有 Triton 工作流兼容性的同时补齐这部分能力。

tle-speedup-20260626

TLE 的主要优势包括:

  • 从可移植到硬件导向调优的渐进式抽象(Lite / Struct / Raw)。
  • 更好覆盖多设备、架构特化与后端 lowering 场景。
  • 在保留优化空间的同时,降低现有 Triton kernel 的迁移改造成本。

详细设计、API 与示例请参考 TLE WikiTLE-Raw Wiki

性能改进

无需修改任何 Triton 算子代码,FlagTree 可在实际模型中的某些形状上获得性能增益。 下面以 Qwen 模型中调用的一些形状下的 mm 算子为例,展示 FlagTree 在不同芯片上的性能增益。

nv_h100_bf16_mm_1a nv_h100_fp32_mm_1a hcu_bf16_mm_1a hcu_fp32_mm_1a hcu_bf16_mm_3d hcu_fp32_mm_3d mthreads_bf16_mm_1a_3c mthreads_fp32_mm_1a mthreads_bf16_mm_1c mthreads_fp32_mm_1c enflame_bf16_mm_3d enflame_fp32_mm_3d

新特性

  • 2026/07/07 新增接入 NVIDIA tileir 后端(对应 Triton 3.6),加入 CI/CD。
  • 2026/07/03 iluvatar 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/07/02 xpu 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/06/30 sunrise 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/06/26 metax 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/06/10 新增接入 rpu 后端(对应 Triton 3.6),加入 CI/CD。
  • 2026/06/08 ascend 后端升级到 Triton 3.5,加入 CI/CD。
  • 2026/06/03 新增接入 ARM64 cpu 后端(对应 Triton 3.3)。
  • 2026/06/01 新增接入 damoacademy 后端(对应 Triton 3.6),加入 CI/CD。
  • 2026/05/12 mthreads 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/05/07 hcu 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/04/24 mthreads 后端升级到 Triton 3.2,加入 CI/CD。
  • 2026/04/17 enflame 后端升级到 Triton 3.6,加入 CI/CD。
  • 2026/03/13 enflame 后端升级到 Triton 3.5,加入 CI/CD。
  • 2026/01/23 新增接入 sunrise 后端(对应 Triton 3.4),加入 CI/CD。
  • 2026/01/08 添加 HINTSTLETLE-Raw 等新功能 WIKI。
  • 2025/12/08 新增接入 enflame 后端(对应 Triton 3.3),加入 CI/CD。
  • 2025/11/26 添加 FlagTree 后端特化统一设计文档 FlagTree-Backend-Specialization
  • 2025/10/28 提供离线构建支持(预下载依赖包),改善网络环境受限时的构建体验,使用方法见后文。
  • 2025/09/30 在 GPGPU 上支持编译指导 shared memory。
  • 2025/09/29 SDK 存储迁移至金山云,大幅提升下载稳定性。
  • 2025/09/25 支持编译指导 ascend 的后端编译能力。
  • 2025/09/16 新增接入 hcu 后端(对应 Triton 3.0),加入 CI/CD。
  • 2025/09/09 Fork 并修改 llvm-project,承接 FLIR 的功能。
  • 2025/09/01 新增适配 Paddle 框架,加入 CI/CD。
  • 2025/08/16 新增适配北京超级云计算中心 AI 智算云。
  • 2025/08/04 新增接入 T*** 后端(对应 Triton 3.1)。
  • 2025/08/01 FLIR 支持编译指导 shared memory loading。
  • 2025/07/30 更新 cambricon 后端(对应 Triton 3.2)。
  • 2025/07/25 浪潮团队新增适配 OpenAnolis 龙蜥操作系统。
  • 2025/07/09 FLIR 支持编译指导 Async DMA。
  • 2025/07/08 新增多后端编译统一管理模块。
  • 2025/07/02 新增接入 S*** 后端(对应 Triton 3.3)。
  • 2025/06/20 FLIR 开始承接 MLIR 扩展功能。
  • 2025/06/06 新增接入 tsingmicro 后端(对应 Triton 3.3),加入 CI/CD。
  • 2025/06/04 新增接入 ascend 后端(对应 Triton 3.2),加入 CI/CD。
  • 2025/06/03 新增接入 metax 后端(对应 Triton 3.1),加入 CI/CD。
  • 2025/05/21 FLIR 开始承接到中间层的转换功能。
  • 2025/04/09 新增接入 aipu 后端(对应 Triton 3.3),提供 torch 标准扩展范例,加入 CI/CD。
  • 2025/03/26 接入安全合规扫描。
  • 2025/03/19 新增接入 xpu 后端(对应 Triton 3.0),加入 CI/CD。
  • 2025/03/19 新增接入 mthreads 后端(对应 Triton 3.1),加入 CI/CD。
  • 2025/03/12 新增接入 iluvatar 后端(对应 Triton 3.1),加入 CI/CD。

环境准备

避免环境匹配问题的最佳实践是使用 用户手册 中推荐的镜像。

从源码安装

安装依赖(注意使用正确的 python3.x 执行):

apt update; apt install zlib1g zlib1g-dev libxml2 libxml2-dev nlohmann-json3-dev
python3 -m pip install -r python/requirements.txt

通用的构建安装方式(网络畅通环境下推荐使用):

# Set FLAGTREE_BACKEND using the backend name from the table above
export FLAGTREE_BACKEND=${backend_name}  # Do not set it on nvidia/amd/triton-shared

# For Triton 3.1/3.2/3.3 (branch: triton_v3.1.x, triton_v3.2.x, triton_v3.3.x)
cd python; python3 -m pip install . --no-build-isolation -v  # Install flagtree and uninstall triton

# For Triton 3.4/3.5/3.6 (branch: triton_v3.4.x, triton_v3.5.x, main)
python3 -m pip install . --no-build-isolation -v             # Install flagtree and uninstall triton

安装 flagtree 后,可通过下列命令查看:

python3 -m pip show flagtree
cd ${ANY_DIR_OTHER_THAN_FLAGTREE_PYTHON}; python3 -c 'import triton; print(triton.__path__)'

免源码安装

参见 用户手册

关于贡献

欢迎参与 FlagTree 的开发并贡献代码,详情参见 CONTRIBUTING.md

许可证

FlagTree 使用 MIT license

邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号