-
Notifications
You must be signed in to change notification settings - Fork 1
2023飞桨黑客松护航计划‐IR PASS专项
zhangyuqin1998 edited this page Oct 12, 2023
·
15 revisions
-
机器申请 Ai-studio开发机器申请链接
-
编译Paddle
cmake .. -GNinja -DPY_VERSION=3.8 -DON_INFER=ON -DWITH_TESTING=ON -DWITH_INFERENCE_API_TEST=OFF -DWITH_MKL=ON -DWITH_GPU=ON -DWITH_MKLDNN=ON -DWITH_CUSTOM_DEVICE=OFF -DWITH_DISTRIBUTE=OFF
-
IR Infra 设计 https://github.com/PaddlePaddle/Paddle/issues/55205 以及关联链接
-
Pass Infra 开发 https://github.com/PaddlePaddle/Paddle/pull/54738 以及 PR 描述关联链接
Fuse kernel 迁移至 Phi 与新 IR Fuse op 定义自动生成 @Xinyu302
编号 | Op | 后端 | 所属pass | PR |
---|---|---|---|---|
示例 | multihead_matmul | gpu | multihead_matmul_fuse_pass.cc | PR#56846 |
示例 | conv2d_fusion | gpu | conv_elementwise_add_act_fuse_pass.cc | |
1 | fused_multi_transformer | gpu | fuse_multi_transformer_layer_pass.cc | |
2 | fused_multi_transformer_int8 | gpu | fuse_multi_transformer_layer_pass.cc | |
3 | fused_embedding_eltwise_layernorm | gpu | embedding_eltwise_layernorm_fuse_pass.cc | PR#57865 |
4 | fusion_transpose_flatten_concat | gpu | transpose_flatten_concat_fuse_pass.cc | PR#57865 |
5 | skip_layernorm | gpu | skip_layernorm_fuse_pass.cc | |
6 | fusion_transpose_flatten_concat | gpu | transpose_flatten_concat_fuse_pass.cc | |
7 | fc | cpu/gpu | fc_fuse_pass.cc | |
8 | fused_bias_dropout_residual_layer_norm | gpu | preln_residual_bias_fuse_pass.cc | |
9 | fused_bn_add_activation | gpu | fuse_bn_add_act_pass.cc | |
10 | fused_fc_elementwise_layernorm | gpu | fc_elementwise_layernorm_fuse_pass.cc | PR#57865 |
11 | fused_feedforward | gpu | fused_feedforward_pass.cc | |
12 | fused_attention | gpu | fused_attention_pass.cc | |
13 | self_dp_attention | cpu | self_attention_fuse_pass.cc | |
14 | fusion_repeated_fc_relu | cpu | repeated_fc_relu_fuse_pass.cc | |
15 | fusion_gru | cpu | fc_gru_fuse_pass.cc | |
16 | fusion_seqconv_eltadd_relu | cpu | seqconv_eltadd_relu_fuse_pass.cc | |
17 | fusion_seqexpand_concat_fc | cpu | seq_concat_fc_fuse_pass.cc | |
18 | fusion_squared_mat_sub | cpu | squared_mat_sub_fuse_pass.cc | |
19 | fusion_seqpool_concat | cpu | seqpool_concat_fuse_pass.cc | |
20 | fusion_seqpool_cvm_concat | cpu | seqpool_cvm_concat_fuse_pass.cc |
- TODO
常量折叠 Pass 与新 IR Infra 关键机制设计与实现 @zhangyuqin1998
- 根据常量折叠Pass的需求对新IR中Parameter的机制与管理方式重新进行设计(需要熟悉训练和推理场景下IR Program的加载、保存、执行等关键流程)
- 设计机制支持Op在Pass阶段进行常量计算
新IR Pass 推理单测基础设施搭建 @Xinyu302
在Python端打通新IR跑模型推理的流程(包括:模型加载,模型转换为新IR,Pass优化,模型推理执行),并封装为通用接口用于后续Pass推全时进行模型的批量验证。