Introduction
Baidu's PaddlePaddle framework has released version 2.6.0, introducing significant architectural changes aimed at improving extensibility and performance for large-scale model training and inference.
New Intermediate Representation: PIR
The most notable technical shift is the introduction of PIR (Paddle Intermediate Representation). PIR provides a systematic abstraction of core framework concepts like Operations, Attributes, and Types. It utilizes a Dialect mechanism to manage module-specific IR needs and strictly follows the SSA (Static Single Assignment) principle. This design aims to unify top-level structures while maintaining operator order and computational graph semantics, offering a more streamlined path for Pass development and optimization.
Auto Parallelism and Distributed Training
To address the complexity of training large models, Paddle 2.6.0 enhances its Auto Parallelism capabilities. The framework now supports “semi-automatic” parallel programming, where developers only need to annotate tensor sharding, and the system automatically derives the distribution state and inserts communication operators. This simplifies the implementation of mixed parallel strategies like Pipeline Parallelism (PP) and Tensor Parallelism (TP).
Distributed training performance has also been optimized through techniques like TensorFusion and overlapping communication with computation. The release adds support for advanced strategies such as MP (Model Parallelism), PP, SP (Sequence Parallelism), and MOE (Mixture of Experts).
Dynamic-to-Static and CINN Integration
The dynamic-to-static (dy2st) compilation pipeline has been upgraded with the integration of the CINN (Computation in Neural Networks) compiler. Vendor claims indicate that the dy2st training success rate has reached 100% across 700+ industrial models. The update also introduces an AutoTuner tool for automatically searching and tuning parallel strategies based on profiling data.
Inference and Hardware Support
Paddle Inference has received optimizations for both GPU and CPU. GPU inference now supports multi-threaded asynchronous execution and TensorRT integration, while CPU inference leverages OneDNN for performance gains on models like SwinTransformer. The release also introduces CustomDevice support, allowing vendors to integrate custom operators and fusion strategies.
Breaking Changes and Security
Users upgrading to 2.6.0 must note breaking changes. The legacy paddle.fluid API has been completely removed, and the framework has removed the compatibility mode for 0-dimensional tensors. Additionally, a security vulnerability in the dy2st syntax translation module has been patched.