来源:互联网 更新时间:2026-08-23 13:46
深度学习框架,可以说是整个AI大厦的地基。地基打好了,上面的建筑才能盖得高、盖得稳。它把硬件底层那些复杂操作封装成通用接口,让开发者能专心搞算法,不用去管显存分配、算子调度这些头疼的事。自动微分、动态图这些功能的加入,更是把开发效率拉到了一个全新的高度。
飞桨,作为国内首个自主研发的开源深度学习平台,从1.0版本静态图起步,到2.0版本默认动态图并实现动静统一、训推一体,再到如今为大模型时代量身打造的
深度学习框架的设计,终极目标就是降低技术创新和应用的门槛。怎么做到?得从两个维度发力。
首先是用户端。一个好的框架必须给开发者极致的体验——不是说“好用”就行,而是要大幅度削减学习成本和时间成本。飞桨提出的“动静统一、训推一体、自动并行”,就是冲着这个目标去的。其次是硬件端。现代模型跑在各种各样的芯片上,框架必须能屏蔽硬件差异,做到广泛适配,还要能跟硬件协同优化,榨干每一分性能。
另一方面,框架的演进必须紧跟技术趋势和产业需求。大语言模型、MOE、多模态、科学计算……这些前沿方向对分布式训练、存储、通信都提出了更高要求。框架不仅要支持这些新模型,还得具备训练、压缩、推理一体化的全流程能力。只有跟得上趋势、经得住打磨的框架,才能为产学研各界开发者提供持续稳定的支持。
飞桨框架3.0的设计理念和主要特色
基于这些思考,飞桨框架3.0在2.x版本的基础上,
要实现上面这些特性,架构设计必须下硬功夫。下面这张架构图,展示了飞桨框架3.0的核心模块和它们之间的协作关系。
飞桨框架 3.0 架构图
从最上层往下看,飞桨对外提供了丰富的开发接口——张量运算、数学计算、模型组网、优化策略等等。再往下,框架分为4个层次:
这次3.0版本的架构升级,主要集中在三大块:
计算图的中间表示(IR)是深度学习框架性能优化、推理部署、编译器等方向的基石。在大模型时代,对IR的灵活性、扩展性、完备性要求更高了。飞桨3.0在基础架构层面统一了IR定义,实现了全架构统一表示,让上下游各个方向共享开发成果。
PIR的核心理念是高度灵活和高扩展性。它通过Type、Attribute、Op、Trait、Interface这些基础组件,以及Dialect概念,让开发者能灵活扩展和定制语义表达。在模型表示层,通过多Dialect的模块化管理和统一多端表示,实现了训练与推理一体化的全架构统一表示,无缝对接编译器和多硬件。在图变换层,统一底层模块,简化概念,提供了低成本、易用、高性能的Pass开发机制,支持丰富且可插拔的优化策略。
PIR坚守静态单赋值(SSA)原则,模型等价于一个DAG。它用Operation表示节点,Value表示边。Operation可以包含Region、Block,嵌套构建任意复杂语法。Value连接Operation,描述Use-Define链。飞桨提供了PatternRewriter和Declarative Rewrite Rule(DRR)两种Pass开发机制,兼顾灵活性与易用性。采用三段式Pass开发,开发者只需关注逻辑,不用管底层IR细节。实际效果:
为什么要把编译器技术引入深度学习框架?三个核心原因:
第一,硬件发展速度严重不均衡——算力跑得飞快,但访存性能、CPU性能、总线带宽都跟不上。许多算子(如norm、activation)都受访存瓶颈限制。基于编译器的自动融合技术,可以把多个小算子融合成一个大算子,减少访存量和算子数量,大幅提升性能。这已经是深度学习框架的标配能力。
第二,模型结构越来越多样性。手动优化不可能覆盖所有模型,编译器提供的通用优化路径是最现实的解法。
第三,市面上有大量不同架构的硬件,每个都需要针对性优化,人力投入巨大。编译器可以大幅降低这类优化成本。
拿Llama里常用的RMS Normalization来举例。用Python接口组合实现很简单:
class RMSNorm(paddle.nn.Layer):
def __init__(self):
super().__init__()
self.variance_epsilon = 1e-6
self.size = 768
self.weight = paddle.create_parameter(
shape=[self.size],
dtype=paddle.get_default_dtype(),
default_initializer=nn.initializer.Constant(1.0),
)
def forward(self, x):
variance = x.pow(2).mean(-1, keepdim=True)
x = paddle.rsqrt(variance + self.variance_epsilon) * x
return x * self.weight
这段代码开发简单,但性能差、显存占用高。如果手写FusedRMSNorm,性能好但开发成本高。借助编译器自动优化,在A100平台上测试:
飞桨编译器的整体架构如下图。在表示层,CINN前端利用PIR扩展能力,完成算子拆分、重计算、子图划分、维度推导等操作,生成多个可被编译器后端优化的子图。后端会把子图转换为AST形式的低层IR,在此基础上做循环融合,最终生成一个kernel。底层IR还会进行性能调优,找到最优配置,再生成具体代码。
在Llama和Stable Diffusion上的测试结果显示,
大模型训练为什么要做自动并行?因为现在主流的手动并行方式实在太痛苦了。开发者需要同时精通模型结构、并行策略和框架调度逻辑,才能手工处理切分、通信、显存优化、调度优化这些事。结果就是大模型创新迭代被这些工程细节拖慢了。
举一个简单例子:在手动并行中,因为并行策略会导致Tensor shape变化,那些跟shape相关的算子(比如reshape)都得根据切分策略手动调整参数。稍有不慎就出错。
飞桨的自动并行方案是:
在具体设计上,我们引入了两个关键概念:ProcessMesh和Placements。ProcessMesh把GPU卡映射为进程,多卡组成一维或多维数组。Placements是由Replicate、Shard、Partial三种标记组成的列表,分别表示张量在不同设备上复制、按维度切分、或是不完整需要做reduce操作。
开发者通过paddle.distributed.shard_tensor()接口标注张量切分,框架自动推导。下图展示了一个数据并行、张量并行、流水线并行混合的例子。
对应代码示例:
import paddle
import paddle.distributed as dist
...
mesh0 = dist.ProcessMesh([[0, 1], [2, 3]], dim_names=['x', 'y'])
mesh1 = dist.ProcessMesh([[4, 5], [6, 7]], dim_names=['x', 'y'])
class MlpModel(paddle.nn.Layer):
def __init__(self):
super().__init__()
self.w0 = dist.shard_tensor(
self.create_parameter(shape=[1024, 4096]),
mesh0, [dist.Replicate(), dist.Shard(1)])
self.w1 = dist.shard_tensor(
self.create_parameter(shape=[4096, 1024]),
mesh1, [dist.Replicate(), dist.Shard(0)])
def forward(self, x):
dist.shard_tensor(x, mesh0, [dist.Shard(0), dist.Replicate()])
y = paddle.matmul(x, self.w0)
y = dist.reshard(y, mesh1, [dist.Shard(0), dist.Shard(2)])
z = paddle.matmul(y, self.w1)
return z
...
model = MlpModel()
opt = paddle.optimizer.AdamW(...)
dist_model, dist_loader = dist.to_static(model, opt, ...)
for step, data in enumerate(dist_loader()):
loss = dist_model(data)
采用自动并行后,以Llama为例,
飞桨框架3.0-Beta是面向大模型和异构多芯的专属设计。向下适配多种硬件,释放潜能;向上一体化支撑大模型训练、推理。四大核心能力全面提升了服务产业的能力:
这就是飞桨新一代框架3.0。目前3.0-Beta版本已面向开发者开放,所有接口与2.x完全兼容,欢迎广大开发者使用和反馈。
腾讯ima怎么把微信内容一键导入知识库?
黄金价格不断创新高!黄金稳定币XAU、PAXG市值达11亿美元
腾讯ima怎么创建共享知识库?
Celestia价格预测2026-2032:TIA币能否引领山寨币上涨行情?历史价格回顾
新浪互联网热点小时报丨2026年07月26日16时_今日实时互联网热点速递
比特币(BTC)核心周期指标复刻历史走势 价格或跌破5.8万美元关键支撑位
新浪机器学习热点小时报丨2026年07月25日18时_今日实时机器学习热点速递
WorkBuddy微信版怎么获得积分?
新浪人工智能热点小时报丨2026年07月30日18时_今日实时人工智能热点速递
比特币 2025 年价格预测:BTC 的未来走势
车载冰箱重置到出厂设置几步?
5000元起的鼠标哪个最值得入手?
管线机怎么接云米净水器
短剧《史上最强洪荒修为》剧情介绍
笔记本移动电源推荐哪款?
结婚家电首选:Leader懒人三筒Ultra热泵洗烘一体
kimi提示词专家使用方法新手指南
Aptos(APT)2026-2032年价格预测与历史走势梳理
短剧《仙人跳获透视,古玩玉器我全拿捏》剧情介绍
腾讯ima知识库怎么分类管理?
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc