背景
飞桨框架迭代较快,其部分单测没有跟框架同步更新,导致当前很多单测处于不可用状态。
涉及范围
- 截止 2025-09-03 的
develop 分支, 排查后发现有 22 个在 GPU 上报错的算子单测
- 本期仅修复算子单测报错
任务
表格中为单测名称,具体文件位于Paddle/test/legacy_test/目录下,文件名为单测名称.py。例如test_activation_op对应的单测文件是Paddle/test/legacy_test/test_activation_op.py
示例修复
参考 PR: #74839
以 test_conv2d_op 为例,其报错原因是 Paddle 中的数据类型在不同情况下对应不同对象:
paddle.float32 可能对应 VarDesc.VarType.FP32 或 DataType.FLOAT32
- 对 Tensor 数据类型判断时,仅使用
paddle.float32 可能导致判断失败
因此在 op_test.py 中做了对应修改。
注意:不同单测可能存在完全不同的问题,本示例仅作为参考。
复现报错的方式如下。首先参考编译说明进行paddle的编译和安装。需要注意在执行cmake时,添加-DWITH_TESTING=ON。例如:cmake .. -DPY_VERSION=3.10 -DWITH_GPU=ON -DWITH_DISTRIBUTE=ON -DWITH_TESTING=ON。随后参考运行单元测试
代码提交方式
- 了解代码规范:开发规范文档以及代码贡献流程
- 基于 Paddle 的
develop 分支进行开发
- 修复完成后,需要在本地验证通过后提交 PR贡献到Paddle仓库。
⚠️ 注意:
如果 CI 流水线出现报错,但你认为报错原因 与 PR 无关(例如网络问题、某些机器显存不足,或性能测试因随机原因未达标等),可以在 PR 下方评论:
来 重新触发 流水线。
认领方式
请大家以 comment 的形式认领任务,如:
- 多个任务之间需要使用中文顿号分隔,报名多个连续任务可用横线表示,如 1-2
- PR 提交格式:在 PR 的标题中以 【UnitTestFix No.xxx】 开头,注明任务编号
看板信息
| 任务方向 |
任务数量 |
提交作品 / 任务认领 |
提交率 |
完成 |
完成率 |
| GPU单测修复 |
24 |
22 / 22 |
91.67% |
21 |
87.5% |
统计信息
排名不分先后 @scyyh11 (3) @aztice (6) @ooooo-create (2) @LiaoYFBH (1) @WanRui37 (1) @Dayuxiaoshui (1) @Echo-Nie (2) @tjujingzong (2) @SZTULDH (1) @youge325 (1) @L-CXQD (1)
背景
飞桨框架迭代较快,其部分单测没有跟框架同步更新,导致当前很多单测处于不可用状态。
涉及范围
develop分支, 排查后发现有 22 个在 GPU 上报错的算子单测任务
表格中为单测名称,具体文件位于
Paddle/test/legacy_test/目录下,文件名为单测名称.py。例如test_activation_op对应的单测文件是Paddle/test/legacy_test/test_activation_op.py@scyyh11
@SZTULDH
@SZTULDH
示例修复
参考 PR: #74839
以
test_conv2d_op为例,其报错原因是 Paddle 中的数据类型在不同情况下对应不同对象:paddle.float32可能对应VarDesc.VarType.FP32或DataType.FLOAT32paddle.float32可能导致判断失败因此在
op_test.py中做了对应修改。复现报错的方式如下。首先参考编译说明进行paddle的编译和安装。需要注意在执行cmake时,添加-DWITH_TESTING=ON。例如:cmake .. -DPY_VERSION=3.10 -DWITH_GPU=ON -DWITH_DISTRIBUTE=ON -DWITH_TESTING=ON。随后参考运行单元测试
代码提交方式
develop分支进行开发认领方式
请大家以 comment 的形式认领任务,如:
看板信息
统计信息