paddle-static-graph
Paddle 静态图模式
Paddle 静态图采用先编译、后执行的范式:Python 端构建 Program 描述计算逻辑,再由 Executor 将 Program 翻译为可调度的算子序列并执行。
Program 结构速查
ProgramDesc
└─ blocks_: vector<BlockDesc>
├─ BlockDesc [0] (global block)
│ ├─ ops_: vector<OpDesc> ← 前向 + 反向 + 优化器算子
│ └─ vars_: map<string, VarDesc> ← 参数、中间变量、梯度
└─ BlockDesc [1..N] (sub-blocks, 用于 while_op / cond 等控制流)
- ProgramDesc:顶层容器,持有 protobuf 描述和 BlockDesc 列表。
- BlockDesc:逻辑作用域,包含 OpDesc 序列和 VarDesc 字典。
- OpDesc:一个算子描述,记录类型、输入输出名称、属性。
- VarDesc:一个变量描述,记录名称、dtype、shape、持久化标记等。
More from pfcclab/paddle-skills
paddle-pull-request
|
30paddle-debug
专注于在 Paddle 代码库中定位问题并输出高质量调试报告的调试流程与技巧;代码修复是在结论充分后的后续步骤。遇到 Paddle 框架、算子、训练脚本或分布式训练相关问题时,优先使用本 skill 规划调试与报告输出。
24fastdeploy-pull-request
|
20paddle-pir-cinn
Use when working with Paddle's new IR system (PIR) or CINN compiler: understanding SSA-based Program structure, Dialect/Type/Attribute design, writing or debugging Passes, tracing the CINN compilation pipeline from GroupOp to CUDA kernel, or translating legacy ProgramDesc to PIR.
5paddle-phi-kernel
Use when working with Paddle's PHI kernel system: registering new kernels, debugging kernel selection/dispatch, understanding code auto-generation from YAML, or implementing operator decomposition via the combination mechanism.
5paddle-eager-graph
Use when navigating Paddle eager-mode (dynamic graph) source code, tracing forward/backward execution, debugging autograd issues, understanding PyLayer, or investigating complex-valued gradient computation. Covers Python API to C++ kernel call chain, backward graph topology sort, and inplace version tracking.
5