免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


DeepSeek-V3.2背后的国产算子编程语言TileLang是什么?如何保持性能领先的同时减少6倍代码量?

发布日期:2025-09-29 21:45:41 浏览次数: 1514
作者:机智流

微信搜一搜,关注“机智流”

推荐语

国产AI算子编程语言TileLang如何实现性能与开发效率双突破?揭秘DeepSeek-V3.2背后的技术利器。

核心内容:
1. TileLang的核心技术:高级数据流描述自动转换为高效底层代码
2. 实际应用效果:将FlashAttention算子代码量减少6倍并保持性能
3. 对国产开源生态的影响与未来发展趋势

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家


本文由 Intern-S1 等 AI 生成,机智流编辑部校对

引言

今天傍晚,DeepSeek-V3.2-Exp模型正式发布并开源。该模型引入了稀疏Attention架构,旨在降低计算资源消耗并提升模型推理效率,并且已成功在华为云平台完成适配,支持高达160K的长序列上下文。这一进展无疑对底层算子的性能和开发效率提出了更高的要求。

当我们探讨支撑此类前沿大模型高效运行与快速迭代的底层动力时,视线必然会从模型架构本身,转向其赖以发展的基础工具链。

在不久前华为全联接大会的开发者日上,由北京大学计算机学院杨智团队主导开发的开源AI算子编程语言——TileLang展示了其如何将高级数据流描述自动转换为高效的底层代码(如AscendC),并成功将FlashAttention算子的代码量从500多行精简至80行,同时保持了与官方版本持平的性能。这标志着一个新的趋势:在AI模型竞争日益激烈的背景下,像TileLang这样能够显著提升开发效率的下一代编程工具,正从幕后走向台前,成为加速AI创新的重要引擎。

也得益于其高效性和国产性,DeepSeek 团队在开发 V3.2-Exp 时就采用了 TileLang 进行快速原型开发,以支持更深入的探索。

今天我们就来扒一扒 TileLang 的核心技术与设计理念、其背后的技术团队与项目发展,以及这项技术对国产开源生态的影响。

TileLang 开源仓库:https://github.com/tile-ai/tilelang

1 什么是TileLang?概述与起源

在AI技术飞速发展的今天,深度学习模型的复杂度和规模呈指数级增长,这对底层计算效率提出了前所未有的挑战。AI算子作为构成深度学习模型的基本计算单元,其性能直接影响整个模型的训练和推理效率。然而,传统的算子开发方法存在诸多瓶颈:CUDA编程门槛高、Triton等现有DSL(领域特定语言)在自定义高性能kernel方面灵活性不足,TVM/Tensor IR的调度代码复杂且难以维护。正是在这样的背景下,一款名为TileLang的创新性AI算子编程语言应运而生。

TileLang是由北京大学计算机学院杨智副教授团队主导开发的一款开源AI算子编程语言,其核心价值在于能够将高级别的数据流描述,自动转换并优化为高效的底层代码(如CUDA或AscendC)。通过独特的Tile级抽象自动调度能力,开发者可以用更简洁的代码表达复杂计算,同时获得接近手写算子的高性能,显著提升了AI算子的开发效率。

TileLang的设计目标

TileLang的设计目标主要体现在三个方面:

  • 降低开发门槛:通过高层次的抽象接口,使不熟悉硬件细节的算法工程师也能高效开发高性能算子。
  • 保持性能竞争力:生成的代码性能与手写优化代码相媲美,在多种常见算子上的测试表明,其性能可达业界领先水平的95%以上。
  • 支持多硬件后端:当前版本已支持GPU(CUDA)和昇腾(AscendC)等主流AI加速硬件,为国产算力平台提供优质开发体验。

为何命名为"TileLang"?

"Tile"一词在高性能计算中指计算分块,这是优化内存层次结构利用的关键技术。无论是CPU的缓存系统,还是GPU的共享内存/寄存器层次,合理的Tiling策略都是实现高性能计算的必要条件。TileLang将这一概念提升为语言的核心抽象,使开发者能够自然表达计算分块策略,而编译器则能智能地进行优化。

表:TileLang与现有AI算子开发方式对比

特性
传统CUDA编程
Triton
TVM/Tensor IR
TileLang
学习曲线
陡峭
中等
中等
平缓
代码量
中等
性能控制
精细
部分控制
依赖调度编写
自动优化+专家调控
可维护性
中等
跨硬件支持
仅NVIDIA GPU
主要NVIDIA GPU
多后端
多后端(包括国产硬件)

2 TileLang的核心技术与设计理念

2.1 Tile级抽象:贯穿始终的核心思想

TileLang的核心技术优势源于其统一的Tile级抽象。在高性能计算中,Tiling(分块)是优化数据局部性、提升缓存利用率的关键技术。TileLang将这一概念从简单的循环分块提升为一级语言抽象,使开发者能够以数据流为中心描述计算,而不必过多关注硬件细节。

与传统DSL相比,TileLang的创新之处在于将调度空间(包括线程Binding、Layout、Tensorize和Pipeline)与数据流解耦,并将其封装为一组可自定义的注解和原语。这一设计使得用户能够专注于kernel的数据流本身,而将大多数优化工作交由编译器完成。在实际应用中,这种抽象显著降低了代码复杂度——如将FlashAttention算子的实现从500多行减少至80行,同时保持了与官方版本持平的性能。

2.2 自动调度与推理机制

TileLang的编译器集成了先进的自动推理机制,能够在多个层面优化算子的性能表现:

  • 布局推理(Layout Inference):TileLang引入了一套完整的布局推理系统,用于描述数据在内存中的组织和映射方式。这一系统包括严格布局推理(针对矩阵乘等有强布局约束的算子)和通用布局推理(用于推导相连表达式的布局),使得编译器能够自动确定最优的内存布局。
  • 并行度推理:通过T.Parallel等原语,编译器能够自动推导出适合目标硬件的并行策略,包括线程绑定、向量化优化等。例如,给定kernel上下文128个线程,将Copy操作用T.Parallel包装后,编译器能够自动推导出高性能形式,最终Codegen成优化的CUDA代码。

  • 内存层次优化:TileLang允许开发者精确控制数据在内存层次结构中的流动,例如将数据缓存到寄存器进行反量化后再写入共享内存,或是直接写回共享内存。这种灵活性使得专家开发者能够针对特定硬件特性进行深度优化。

2.3 多层级编程范式

为满足不同背景开发者的需求,TileLang创新性地设计了多层级编程范式

# Level 1: 专家级编程 - 直接控制硬件细节
@tilelang
def kernel_expert_level(A: [128128], B: [128128]):
    # 直接指定线程配置和内存层次
    for i in range(128):
        for j in range(128):
            # 精确控制计算和内存访问
            ...

# Level 2: 开发者级编程 - 使用Tile级抽象
@tilelang
def kernel_developer_level(A: [128128], B: [128128]):
    # 使用Tile原语描述计算
    T.copy(A, B)
    T.reduce(A, B)
    ...

# Level 3: 初学者级编程 - 高级表达式
@tilelang
def kernel_beginner_level(A: [128128], B: [128128]):
    # 直接描述数学表达式
    C = A @ B
    ...

这种分层设计使得TileLang既能满足硬件专家对性能极致的追求,又能让算法研究人员快速实现其想法,大大扩展了语言的适用场景。

表:TileLang的多层级编程范式支持

编程级别 目标用户 技术要求 代码复杂度 性能控制度
Level 1
硬件专家、资深CUDA程序员
精通硬件架构、内存层次
精细控制
Level 2
AI算子开发者、研究生
了解Tile概念、基础并行计算
平衡控制与效率
Level 3
算法工程师、初学者
熟悉数学表达式和Python
自动优化

3 技术团队与项目发展

3.1 北大杨智团队:深耕AI系统研究

TileLang的背后是北京大学计算机学院杨智副教授领衔的科研团队。杨智老师是北京大学计算机学院的副研究员、博士生导师,拥有国家高层次青年人才称号,在深度学习模型的分布式并行、计算优化、算法和系统设计方面有着深厚积累。

该团队的研究特色鲜明,采用自顶向下的系统性研究方法,培养学生构建从上层算法应用到底层数据处理和计算系统的全方位能力。团队长期与阿里、微软研究院等产业界领先团队保持密切合作研究与联合培养,使研究生能够接触实际需求、数据和系统,有效提高科研和实际能力。这种产学研深度融合的模式,为TileLang的研发提供了坚实支撑。

3.2 项目发展历程与成果

TileLang项目虽然相对年轻,但已经取得了一系列令人瞩目的成果:

  • 开源表现亮眼:TileLang在GitHub上开源仅两个月即斩获797星,吸引了280多位开发者加入社区,显示了学术界和工业界的广泛关注。

  • 技术生态合作:项目与SGLang等知名开源项目建立了技术生态合作,逐步构建起自己的技术影响力圈。

  • 行业认可:在2025年9月的华为全联接大会开发者日上,TileLang作为代表性创新成果亮相,团队核心成员董宇骐现场展示了TileLang在FlashAttention算子开发中的显著优势——代码量从500+行减少至80行,同时保持性能持平。

TileLang的性能表现已在多个关键kernel上得到验证,包括FlashAttentionLinear Attention等复杂算子。评估结果表明,TileLang在这些kernel上可实现业界领先的性能,充分展示了其统一的Block-Thread编程范式和透明的调度能力。

H100 上的 Flash Attention 性能
H100 上的 Flash Attention 性能
H100 上的 MLA 性能
H100 上的 MLA 性能

4 开源生态与社区建设

4.1 开源进展与社区活跃度

TileLang遵循开源开放的原则,自2025年1月在GitHub上开源以来,迅速引起了AI编译器与算子开发社区的广泛关注。在短短两个月内,该项目即获得了797个星标,吸引了280多位开发者加入社区,形成了活跃的讨论和技术交流氛围。这种快速的社区成长,反映了市场对更高效AI算子开发工具的迫切需求。

目前已有将近 1800 star
目前已有将近 1800 star

项目的技术生态建设也取得了初步成效,与SGLang等知名开源项目建立了技术生态合作,扩大了其技术影响力。这种合作不仅有助于TileLang在更广泛的场景中得到应用,也促进了项目自身的持续改进和完善。

4.2 产学研融合的创新模式

TileLang的发展模式体现了产学研深度融合的先进理念。作为北京大学计算机学院的科研项目,它既保持了学术研究的前瞻性和创新性,又紧密对接产业界的实际需求。团队与阿里、微软研究院的合作关系,确保了研究方向与产业需求的同频共振。

在2025年9月的华为全联接大会上,TileLang作为鲲鹏昇腾生态的创新成果亮相,显示了其与国产硬件平台的深度整合。TileLang已经能够将高级别的数据流描述自动转换并优化为高效的AscendC代码(华为昇腾的编程语言),这为国产AI算力平台提供了更友好的开发体验。

4.3 开发者培养与社区赋能

TileLang团队高度重视开发者生态建设,通过多种方式降低学习门槛、促进知识共享:

  • 完善文档与示例:开发团队对项目文档进行了全面升级,提供了从基础语法到高级特性的丰富示例代码,帮助开发者快速上手。

  • 性能基准测试:文档中新增了性能基准测试部分,展示TileLang在不同硬件平台上的表现,为开发者评估和优化提供参考。

  • 预构建二进制包:项目提供了CUDA加速的预构建二进制包,主要针对Ubuntu 20.04系统和Python 3.10环境,极大地简化了TileLang在支持CUDA的GPU环境中的部署过程。

5 TileLang对国产开源生态的影响与启示

5.1 从"可用"到"好用":提升国产硬件开发体验

随着中美科技竞争加剧,发展自主可控的AI算力已成为国家战略需求。然而,国产AI芯片(如华为昇腾、寒武纪等)不仅需要硬件层面的竞争力,更需要完善的软件生态支撑。TileLang通过与鲲鹏昇腾生态的深度整合,为国产AI芯片提供了"好用"的开发工具,显著降低了开发者的学习成本和使用门槛。

在华为全联接大会2025的开发者日上,TileLang展示了其将高级数据流描述自动转换为高效AscendC代码的能力,这对于提升国产AI芯片的开发者体验具有重要意义。传统上,为昇腾平台开发高性能算子需要深入掌握AscendC编程,而TileLang允许开发者使用更高级的Python-like语法描述计算,自动生成优化后的底层代码,大大提高了开发效率。

5.2 国产开源的三阶段演进模型

TileLang的发展轨迹印证了国产开源软件从"跟随"到"引领"的演进路径。参考陈哥在技术博客中提出的观点,国产化替代对开源软件的应用分为三个阶段:封装换皮阶段融会贯通阶段创新迭代阶段

TileLang已经超越了简单的"封装换皮",进入了"融会贯通"并向着"创新迭代"阶段迈进。它并非对现有DSL的简单包装,而是基于对AI算子开发痛点的深度理解,提出了创新的Tile级抽象和自动调度机制。这种基于开源而不困于开源的创新范式,正是国产开源软件走向成熟的关键标志。

5.3 构建自主可控的技术体系

TileLang的发展体现了在基础软件领域构建自主可控技术体系的重要性。正如华为任正非所言:"不要重复发明轮子,要站在巨人的肩膀上创新。"TileLang没有完全从头开始设计编程语言,而是选择Python作为宿主语言,借鉴了现代DSL设计的优秀理念,同时针对AI算子开发的特定场景进行了创新性探索。

这种策略平衡了技术自主性发展效率之间的关系——既避免了完全从零开始的高成本,又确保了核心技术的可控性和创新性。在AI编译器这一关键基础软件领域,这种发展模式具有重要的参考价值。

5.4 开源生态与商业化共赢

TileLang坚持开源开放的技术路线,通过社区协作推动项目发展。这种模式有利于形成广泛的技术共识和生态支持,避免重复造轮子,集中有限资源攻克关键技术难点。正如禅道项目管理软件所展示的,开源、开放与共享不仅能够加速技术迭代效率、降低技术准入门槛,其透明性特征更有助于建立可信的技术体系。

对于TileLang这类基础软件而言,开源不仅是开发模式,更是技术推广生态建设的有效途径。通过吸引学术界和工业界的开发者共同参与,TileLang有望更快地成熟完善,形成良性循环的开源生态。

6 总结与展望

TileLang作为一款新兴的AI算子编程语言,凭借其创新的Tile级抽象多层级编程范式强大的自动调度能力,为AI算子开发提供了兼具高生产力和高性能的解决方案。它的出现恰逢其时,既满足了日益复杂的AI模型对高效算子的需求,又为国产AI芯片的软件生态建设提供了有力支撑。

从技术层面看,TileLang的核心优势在于将调度优化计算描述分离,使开发者能专注于数据流本身,而将性能优化交由编译器处理。这种设计哲学使得TileLang在保持代码简洁性的同时,不牺牲性能竞争力,实现了开发效率与运行效率的较好平衡。

从生态影响看,TileLang代表了国产基础软件从"使用开源"到贡献开源再到引领开源"的发展路径。它立足于对AI算子开发痛点的深度洞察,提出了创新性的解决方案,并与国产硬件平台深度整合,为构建自主可控的AI技术生态提供了重要支撑。

展望未来,TileLang仍面临一系列挑战与机遇。在技术层面,需要持续扩展对更多硬件后端的支持,优化自动调度算法的效果,增强语言的表达能力和调试体验。在生态层面,需要吸引更多开发者参与贡献,拓展工业应用场景,建立可持续发展的开源社区模式。

TileLang的发展历程启示我们,在基础软件领域,国产化替代并非简单的"封装换皮",而是需要深度理解和消化开源技术,结合具体应用场景进行创新迭代,最终形成具有自主核心竞争力的技术体系。只有这样,才能在"黑土地"上种出自己的庄稼,构建健康繁荣的技术生态。

随着AI技术的不断演进,对高效算子的需求将愈发迫切。TileLang这类创新性开发工具的价值将进一步凸显,有望成为AI开发栈中不可或缺的一环,为AI技术的普及和深化提供底层支撑。

TileLang 开源仓库:https://github.com/tile-ai/tilelang


-- 完 --


机智流推荐阅读

1. 国内开发者专属Git教程:4步掌握代码管理+分支合并+远程协作(附Gitee/GitHub双平台教程)

2. 聊聊阿里的新深度研究框架:WebWeaver 如何通过双智能体突破传统开源方案“先搜后写”和““静态大纲引导搜索”两种范式

3. 阿里Qwen凌晨发布六款新产品,涵盖多模态、实时翻译、编码、安全、旅行规划等领域,一起来看看吧~

4. 聊聊大模型推理系统之Hetis:如何让“高低配”GPU集群跑出2.25倍吞吐?



关注机智流并加入 AI 技术交流群,不仅能和来自大厂名校的 AI 开发者、爱好者一起进行技术交流,同时还有
HuggingFace每日精选论文顶会论文解读Talk分享通俗易懂的Agent知识与项目前沿AI科技资讯大模型实战教学活动等。
在「机智流」公众号后台回复下方标红内容即可加入对应群聊:
  • cc | 大模型技术交流群
  • hf | HuggingFace 高赞论文分享群
  • 具身 | 具身智能交流群
  • 硬件 | AI 硬件交流群
  • 智能体 | Agent 技术交流群

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询