Paddle icon indicating copy to clipboard operation
Paddle copied to clipboard

【启航计划】PaddlePaddle GPU单测修复

Open YqGe585 opened this issue 3 months ago • 19 comments

背景

飞桨框架迭代较快,其部分单测没有跟框架同步更新,导致当前很多单测处于不可用状态。

涉及范围

  • 截止 2025-09-03 的 develop 分支, 排查后发现有 22 个在 GPU 上报错的算子单测
  • 本期仅修复算子单测报错

任务

表格中为单测名称,具体文件位于Paddle/test/legacy_test/目录下,文件名为单测名称.py。例如test_activation_op对应的单测文件是Paddle/test/legacy_test/test_activation_op.py

序号 单测名称 认领人 / 状态 / PR号
1 test_activation_op @scyyh11 #75553
2 test_adam_op @aztice #75494
@scyyh11
3 test_conv3d_transpose_op @scyyh11 #75945
4 test_dropout_op @aztice #75729
5 test_elementwise_div_op @ooooo-create #75288
6 test_gather_op @aztice #75621
7 test_logical_op @LiaoYFBH #75702
8 test_mean_op @WanRui37 #75457
9 test_memcpy_op @Dayuxiaoshui #75395
10 test_normal @Echo-Nie #75274
11 test_stack_op @ooooo-create #75275
12 test_transformer_api @aztice #75610
13 test_conv2d_transpose_op @Dayuxiaoshui
@SZTULDH #76095
14 test_matmul_v2_op @scyyh11 #75909
15 test_allgather @tjujingzong #75748
16 test_reducescatter @tjujingzong #75842 #75886
17 test_flash_attention @aztice #75620
18 test_fused_dot_product_attention_op @LiaoYFBH
@SZTULDH #76549
19 test_fused_dot_product_attention_op_static @youge325 #76405
20 test_pyramid_hash_op @Echo-Nie #75289
21 test_fleet_pyramid_hash @L-CXQD #76546
22 test_fused_dconv_drelu_dbn_op @aztice #75507
23 test_conv2d_op(需要windows环境复现报错)
24 test_fused_gemm_epilogue_grad_op(需要windows环境复现报错)

示例修复

参考 PR: #74839

test_conv2d_op 为例,其报错原因是 Paddle 中的数据类型在不同情况下对应不同对象:

  • paddle.float32 可能对应 VarDesc.VarType.FP32DataType.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。随后参考运行单元测试

代码提交方式

  1. 了解代码规范:开发规范文档以及代码贡献流程
  2. 基于 Paddle 的 develop 分支进行开发
  3. 修复完成后,需要在本地验证通过后提交 PR贡献到Paddle仓库。

⚠️ 注意:

如果 CI 流水线出现报错,但你认为报错原因 与 PR 无关(例如网络问题、某些机器显存不足,或性能测试因随机原因未达标等),可以在 PR 下方评论:

/re-run all-failed

重新触发 流水线。

认领方式

请大家以 comment 的形式认领任务,如:

【报名】:1、3、2-3
  • 多个任务之间需要使用中文顿号分隔,报名多个连续任务可用横线表示,如 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)

YqGe585 avatar Sep 10 '25 11:09 YqGe585

【报名】:9、13

Dayuxiaoshui avatar Sep 18 '25 13:09 Dayuxiaoshui

【报名】:1

scyyh11 avatar Sep 19 '25 01:09 scyyh11

【报名】:8

WanRui37 avatar Sep 19 '25 13:09 WanRui37

【报名】:2

aztice avatar Sep 24 '25 06:09 aztice

【报名】:22

aztice avatar Sep 24 '25 13:09 aztice

【报名】:12

aztice avatar Sep 29 '25 13:09 aztice

【报名】:17

aztice avatar Sep 30 '25 00:09 aztice

【报名】:6

aztice avatar Sep 30 '25 03:09 aztice

【报名】:14

scyyh11 avatar Sep 30 '25 20:09 scyyh11

【报名】:7

LiaoYFBH avatar Oct 05 '25 14:10 LiaoYFBH

【报名】:4

aztice avatar Oct 09 '25 13:10 aztice

【报名】:15

tjujingzong avatar Oct 11 '25 13:10 tjujingzong

【报名】:16

tjujingzong avatar Oct 13 '25 16:10 tjujingzong

【报名】:3

scyyh11 avatar Oct 17 '25 22:10 scyyh11

【报名】:18

LiaoYFBH avatar Oct 22 '25 10:10 LiaoYFBH

【报名】:13

SZTULDH avatar Oct 28 '25 16:10 SZTULDH

【报名】:19

youge325 avatar Nov 13 '25 10:11 youge325

【报名】:21

L-CXQD avatar Nov 23 '25 10:11 L-CXQD

【报名】:18

SZTULDH avatar Nov 23 '25 15:11 SZTULDH

感谢大家的贡献!启航计划已结束。This issue is closed。

YqGe585 avatar Dec 12 '25 03:12 YqGe585

【启航计划】PaddlePaddle GPU单测修复 已大部分完成,感谢参与的小伙伴们!

排名不分先后 @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)

欢迎继续参与 快乐开源的其他任务

luotao1 avatar Dec 12 '25 06:12 luotao1