PaddlePaddle / Paddle

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
http://www.paddlepaddle.org/
Apache License 2.0
21.66k stars 5.44k forks source link

框架静态图算子自动生成 #51842

Closed heavyrain-lzy closed 1 year ago

heavyrain-lzy commented 1 year ago

问题描述 Please describe your issue

大家好,目前飞桨的算子已十分丰富,能够满足众多用户需求,但另一方面,繁多的算子给框架的维护和开发带来了困难。为了规范静态图算子的定义方式加快算子开发流程,飞桨建立了一套自动代码生成体系。但目前并没有将所有的算子清理完毕,这里筛选出部分简单的算子,欢迎大家一起提交清理。任务目标是将legacy_ops.yaml legacy_backward.yaml中的OP的配置移动到ops.yaml backward.yaml,在op_compat.yaml进行参数名字映射设置(详见附录),如果有version信息还需要在op_version.yaml中配置version信息(详见附录),并将原始手写的算子实现进行删除,也就是删除对应的xxx_op.ccxxx_sig.cc文件或者文件的一部分

注意事项

  1. 学习任务开发步骤 详细说明 ‼️ 极其重要 ‼️
  2. 认领规则:直接回复下 issue 下方
  3. PR 通过 CI 后,可以评论里或者 review request @heavyrain-lzy @zyfncg ,研发会进行审核
  4. 这些任务时间:PR 截止提交时间4月12日,截止合入时间4月15日
  5. 这些任务难度不大,可以加深对框架的熟悉程度,增强代码调试能力,欢迎参与
  6. 历史上的good first issue 也欢迎来提 PR 解决~
  7. 欢迎联系花花加入社区,和我们一起快乐开源!
image

任务列表(整体进度 52/52)

按 merge 的时间顺序,排名不分先后: @RedContritio (3) @GreatV (12) @enkilee (7) @Liyulingyue (1) @gouzil (3) @Ainavo (1) @xiaoyuanzi914 (1) @ScottWong98 (5) @ccsuzzh (2) @YepKong (1) @sanbuphy (6) @longranger2 (3) @heavyrain-lzy (1)

任务关闭 (6)

任务序号 算子名 困难程度 认领人 相关PR
1 affine_grid✅(2023/4/10) 中等 @GreatV #52560
2 index_add✅(2023/3/22) 容易 @GreatV #51887
3 matrix_rank✅(2023/4/17) 容易 @sanbuphy #52659
4 ---- ---- 任务关闭
5 logcumsumexp✅(2023/4/10) 中等 @GreatV #52682
6 dropout 中等 任务关闭
7 expand_as✅(2023/4/13) 中等 @GreatV #52797
8 layer_norm 容易 任务关闭
9 lu✅(2023/4/18) 中等 @longranger2 #52802
10 margin_cross_entropy✅(2023/3/28) 容易 @GreatV #52130
11 matrix_nms✅(2023/4/9) 中等 @ScottWong98 #52479
12 spectral_norm✅(2023/3/30) 容易 @GreatV #52145
13 generate_proposals✅(2023/4/24) 中等 @longranger2 #52940
14 bilinear_tensor_product✅(2023/4/10) 中等 @gouzil #52690
15 sigmoid_cross_entropy_with_logits✅(2023/3/30) 容易 @gouzil #52263
16 auc✅(2023/4/3) 中等 @xiaoyuanzi914 #52437
17 accuracy✅(2023/4/3) 中等 @gouzil #52424
18 logical_and✅(2023/4/6) 中等 @ScottWong98 #52451
19 logical_not✅(2023/4/6) 中等 @ScottWong98 #52451
20 logical_or✅(2023/4/6) 中等 @ScottWong98 #52451
21 logical_xor✅(2023/4/6) 中等 @ScottWong98 #52451
22 mean_all✅(2023/4/19) 中等 @GreatV #52855
23 rnn✅(2023/4/18) 容易 @ccsuzzh #52799
24 warpctc✅(2023/4/7) 容易 @ccsuzzh #52610
25 uniform_inplace✅(2023/4/17) 中等 @longranger2 #52955
26 merge_selected_rows✅(2023/3/30) 容易 @GreatV #52274
27 clip_by_norm✅(2023/4/12) 中等 @GreatV #52743
28 reverse✅(2023/4/11) 容易 @GreatV #52701
29 squared_l2_norm✅(2023/4/12) 容易 @YepKong #52662
30 temporal_shift✅(2023/4/13) 容易 @sanbuphy #52686
31 yolo_box✅(2023/4/13) 中等 @sanbuphy #52714
32 yolo_loss✅(2023/5/10) 中等 @sanbuphy #52946
33 deformable_conv✅(2023/4/17) 中等 @heavyrain-lzy #52968
34 deformable_conv1 中等 @sanbuphy #53569 任务关闭
35 unpool✅(2023/4/28) 中等 @sanbuphy #52947
36 unpool3d✅(2023/5/9) 中等 @sanbuphy
37 argmax✅(2023/4/7) 中等 @engineer1109 #52562
38 argmin✅(2023/4/7) 中等 @engineer1109 #52562
39 class_center_sample 容易 @enkilee #52685任务关闭
40 eigvalsh✅(2023/4/10) 容易 @enkilee #52687
41 logsumexp 容易 @enkilee #52688任务关闭
42 prelu✅(2023/3/30) 容易 @Ainavo #51913
43 nms✅(2023/3/23) 容易 @enkilee #51891
44 bce_loss✅(2023/4/4) 容易 @enkilee #52231
45 cumprod✅(2023/3/28) 容易 @Liyulingyue #52047
46 huber_loss✅(2023/3/28) 容易 @enkilee #51951
47 kldiv_loss✅(2023/3/28) 容易 @enkilee #51886
48 max_pool2d_with_index✅(2023/4/27) 中等 @GreatV #53359
49 max_pool3d_with_index✅(2023/4/27) 中等 @GreatV #53359
50 p_norm✅(2023/3/22) 中等 @RedContritio #51590
51 nonzero ✅(2023/3/16) 中等 @RedContritio #51600
52 dirichlet✅(2023/3/21) 容易 @RedContritio #51601
enkilee commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 47 | kldiv_loss | 容易 | @enkilee | https://github.com/PaddlePaddle/Paddle/pull/51886 43 | nms | 容易 | @enkilee | https://github.com/PaddlePaddle/Paddle/pull/51891
Ainavo commented 1 year ago
任务序号 算子名称 困难程度 认领人 相关pr
42 prelu 容易 @Ainavo https://github.com/PaddlePaddle/Paddle/pull/51913
GreatV commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 2|index_add|简单|@GreatV| #51887 |
sanbuphy commented 1 year ago
3 | matrix_rank | 容易 |   -- | -- | -- | --

认领

Liyulingyue commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 45 | cumprod| 简单 | @Liyulingyue |https://github.com/PaddlePaddle/Paddle/pull/52047

case8 可能需要关闭,原因见 https://github.com/PaddlePaddle/Paddle/pull/52008

GreatV commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 10 | margin_cross_entropy | 容易 | @GreatV | #52130
enkilee commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 46 | huber_loss | 容易 | @enkilee | https://github.com/PaddlePaddle/Paddle/pull/51951
ccsuzzh commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
23 rnn 容易 @ccsuzzh #52799
24 warpctc 容易 @ccsuzzh #52610
liulinduo commented 1 year ago
序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 39 | class_center_sample | 容易 | liulinduo |   40 | eigvalsh | 容易 | liulinduo |   41 | logsumexp | 容易 | liulinduo |  
Liyulingyue commented 1 year ago

case 45 https://github.com/PaddlePaddle/Paddle/pull/52047

GreatV commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 12 | spectral_norm| 容易 | @GreatV | #52145
enkilee commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 44 | bce_loss | 容易 | @enkilee | https://github.com/PaddlePaddle/Paddle/pull/52231
gouzil commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
15 sigmoid_cross_entropy_with_logits 容易 @gouzil #52263
16 auc 中等 @gouzil (已由 @xiaoyuanzi914 合入 #52437)   #52419
17 accuracy 中等 @gouzil #52424
GreatV commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 26 | merge_selected_rows| 容易 | @GreatV | #52274
engineer1109 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
37 argmax 中等 @engineer1109 https://github.com/PaddlePaddle/Paddle/pull/52562
38 argmin 中等 @engineer1109 https://github.com/PaddlePaddle/Paddle/pull/52562

这两个算子是一体

tipHkB5n commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
28 reverse 容易 @tipHkB5n #52349
Happyd99 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
41 logsumexp 容易 @Happyd99 #52332
YepKong commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
29 squared_l2_norm_op 容易 @YepKong [#52352
Xingkai98 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
30 temporal_shift 容易 @Xingkai98 #52355
Fucpz commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
48 max_pool2d_with_index 中等 @Fucpz #52399
49 max_pool3d_with_index 中等 @Fucpz #52399
Ackeraa commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
40 eigvalsh 容易 @Ackeraa #52440
liulinduo commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
31 yolo_box 中等 @liulinduo #52439
kendaji12138 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
17 accuracy 中等 @kendaji12138 #52438
xiaoyuanzi914 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
16 auc 中等 @xiaoyuanzi914 #52437
shutdownthebridges commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
33 deformable_conv 中等 @shutdownthebridges #52450
ScottWong98 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
18 logical_and 中等 @ScottWong98 #52451
19 logical_not 中等 @ScottWong98 #52451
20 logical_or 中等 @ScottWong98 #52451
21 logical_xor 中等 @ScottWong98 #52451
kendaji12138 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
36 unpool3d 中等 @kendaji12138 #52461
ScottWong98 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
11 matrix_nms 中等 @ScottWong98 #52479
GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
1 affine_grid 中等 @GreatV #52560
sanbuphy commented 1 year ago

认领 29 30 31 32

GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
5 logcumsumexp 中等 @GreatV #52682
gouzil commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
14 bilinear_tensor_product 中等 @gouzil #52690
GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
7 expand_as 中等 @GreatV #52797
enkilee commented 1 year ago
任务序号 | 算子名 | 困难程度 | 认领人 | 相关PR -- | -- | -- | -- | -- 39 | class_center_sample | 容易 | @enkilee |  https://github.com/PaddlePaddle/Paddle/pull/52685 40 | eigvalsh | 容易 | @enkilee |  https://github.com/PaddlePaddle/Paddle/pull/52687 41 | logsumexp | 容易 | @enkilee | https://github.com/PaddlePaddle/Paddle/pull/52688 关闭
GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
28 reverse 容易 @GreatV #52701
GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
27 clip_by_norm 中等 @GreatV #52743
longranger2 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
9 lu 中等 @longranger2 https://github.com/PaddlePaddle/Paddle/pull/52802
sanbuphy commented 1 year ago

认领 33 34 35 36

Fucpz commented 1 year ago

认领 48 49 #52824

longranger2 commented 1 year ago

认领6 13 25

GreatV commented 1 year ago

认领7 13

7已经被认领了

longranger2 commented 1 year ago

bao

认领7 13

7已经被认领了

抱歉是6,已经修改过来了~

shutdownthebridges commented 1 year ago

认领 33 34 35 36

实在抱歉,之前33已经认领提过pr了

GreatV commented 1 year ago

认领6 13 22 25

22 我刚刚提了PR,没有发现你添加了任务编号,能去掉22吗。

GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
22 mean_all 中等 @GreatV #52855
sanbuphy commented 1 year ago

认领 33 34 35 36

实在抱歉,之前33已经认领提过pr了

收到 ,sorry之前没看到

longranger2 commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
6 dropout 中等 @longranger2 https://github.com/PaddlePaddle/Paddle/pull/52965
13 generate_proposals 中等 @longranger2 https://github.com/PaddlePaddle/Paddle/pull/52940
25 uniform_inplace 中等 @longranger2 https://github.com/PaddlePaddle/Paddle/pull/52955
GreatV commented 1 year ago
任务序号 算子名 困难程度 认领人 相关PR
48 max_pool2d_with_index 中等 @GreatV #53359
49 max_pool3d_with_index 中等 @GreatV #53359
luotao1 commented 1 year ago

框架静态图算子自动生成(1期)已全部完成,感谢参与的小伙伴们!

按 merge 的时间顺序,排名不分先后: @RedContritio (3) @GreatV (12) @enkilee (7) @Liyulingyue (1) @gouzil (3) @Ainavo (1) @xiaoyuanzi914 (1) @ScottWong98 (5) @ccsuzzh (2) @YepKong (1) @sanbuphy (6) @longranger2 (3) @heavyrain-lzy (1)

欢迎继续参加 框架静态图算子自动生成(2期)