Skip to content

Commit

Permalink
Merge branch 'PFCCLab:main' into cse0001/WeeklyReport
Browse files Browse the repository at this point in the history
  • Loading branch information
cse0001 authored Sep 1, 2024
2 parents ee0a23c + 22fc676 commit 362701d
Show file tree
Hide file tree
Showing 22 changed files with 601 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
### 姓名

梁嘉铭

### 实习项目

PIR 专项

### 本周工作

本双周工作集中在对于 `Py3` 流水线修复工作,主要包括:

- 修复 `test_analyzer` 相关的单元测试。
- 阅读关于LoD的相关说明
- 补充`SequencePool``Dropout``Scale`算子的 OpTranscriber 逻辑
- 针对于LookUp_Table算子的OpTranscriber 说明见下方PR

相关PR
- https://github.com/PaddlePaddle/Paddle/pull/67305


### 下周工作

1. **继续跟进PIR单测修复工作**

### 导师点评
推进有节奏,继续保持,遇到任何问题随时保持与飞桨导师的沟通~
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
### 姓名

詹荣瑞

### 实习项目

PIR 专项

### 本周工作

1. **当调用 int/float 时通过 guard value 从而避免避免子图打断**
- PaddlePaddle/Paddle#66346

### 下周工作

1. **继续推进 SOT 动态 shape**
- PaddlePaddle/Paddle#67786
- PaddlePaddle/Paddle#67789

### 导师点评

可以继续推进动态 shape 下正确性问题的修复,并添加 fallback 回静态的机制以免动态 shape 导致过多打断~
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
### 姓名

卢林军

### 实习项目

组合机制建设和机制推全

### 本周工作

本项目的主要工作是对尚未支持组合机制的算子添加组合机制并完善机制,本周主要工作如下:

1. 前向拆解heaviside op,并支持动态shape

相关 PR:

- https://github.com/PaddlePaddle/Paddle/pull/66795

2. 为matmul_grad op 添加动态shape支持

相关 PR:

- https://github.com/PaddlePaddle/Paddle/pull/66835

3. 为reduce_as_grad 添加动态shape支持

相关 PR:

- https://github.com/PaddlePaddle/Paddle/pull/67151

4. 补充组合机制的设计与实现文档以及入门开发文档

相关 PR:

- https://github.com/PaddlePaddle/community/pull/938


### 下周工作

1. 收集待拆解算子并为其支持组合机制

### 导师点评

Nice
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
### 姓名

李睿文

### 实习项目

框架 API 易用性提升

### 本周工作

1. **继续进行针对 `F.pad` 的功能增强**

- 1. F.pad 在输入 len(pad) == 2 * x.ndim 时,axis 左对齐,需改为 axis 右对齐;
2. F.pad 不支持除了 len(pad) == 2 * x.ndim 或 len(pad) == 2 * (x.ndim - 2) 以外的情况,需添加其他情况的支持。

- pr 链接:https://github.com/PaddlePaddle/Paddle/pull/65903、https://github.com/PaddlePaddle/Paddle/pull/67298

2. **继续进行针对 `paddle.linalg.matrix_rank` 的功能增强**

- 增加 `atol``rtol` 参数。

- pr 链接:https://github.com/PaddlePaddle/Paddle/pull/66070

3. **针对 `paddle.put_along_axis_` 的功能增强**

- 增加 `broadcast` 参数,与非 inplace API 保持一致。

- pr 链接:https://github.com/PaddlePaddle/Paddle/pull/66687

4. **全面升级 `torch.scatter/torch.scatter_` 的 API 转换规则**

- 更新 PaConvert 中的 json 映射规则以及测试案例。

- pr 链接:https://github.com/PaddlePaddle/PaConvert/pull/440

5. **升级 `F.kl_div` 的 API 转换规则**

- 更新 PaConvert 中的 matcher 以及测试案例。

- pr 链接:https://github.com/PaddlePaddle/PaConvert/pull/438

6. **针对 `paddle.linalg.solve` 的功能增强**

- 增加 `left` 参数,以支持 `Out * X = Y` 的情况。

- pr 链接:https://github.com/PaddlePaddle/Paddle/pull/67071

#### 问题疑惑与解答

暂无

### 下周工作

1. 继续完善 `F.pad``paddle.linalg.matrix_rank` 的修改。
2. 优化 `torch.gather/torch.Tensor.gather` 的 API 转换规则;`torch.Tensor.scatter_` 增加对 x 的测试。
3. `paddle.linalg.lu` 当输入矩阵形状是 `[m, n]` 时,若返回 info,返回的 info 需改为 0D Tensor,暂不存在不兼容问题,可以修改。
4. `paddle.load` 对齐 `torch.load` 持更多路径对象。
5. `paddle.empty` 等包含 dtype 参数的 API 添加⽀持 paddle.dtype 类型的输入。

### 导师点评

后续注意对已修改API进一步完善转换规则,只有Paddle与PaConvert做好配套工作,互相结合,才能够帮助用户更好的使用Paddle。
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
### 姓名

林镇铭

### 本周工作

#### 1. YOLOv10

- 论文阅读
- 源码阅读
- 在PaddleYOLO上实现YOLOv10主体框架
- 验证前向、转换权重、验证集精度对齐
- 验证反向、小规模试训拟合速度对齐
- 提交PR并且已合入

#### 2. RT-DETRv2

- 论文阅读
- 源码阅读
- 在PaddleDetection上实现RT-DETRv2主体框架
- 验证前向、转换权重、验证集精度对齐
- 验证反向、小规模试训拟合速度对齐
- 提交PR等待合入

### 下周工作

- 模型训练速度分析,挖掘可优化的耗时瓶颈

### 详细周报链接

- YOLOv10: https://github.com/PaddlePaddle/PaddleYOLO/pull/238
- RT-DETRv2: https://github.com/PaddlePaddle/PaddleDetection/pull/9073

### 导师点评

高效高质量完成YOLOv10和RT-DETRv2模型的复现工作;继续探索基于RTDETR的开放世界检测
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
### 姓名

林镇铭

### 本周工作

#### 基于rtdetr的开放世界目标检测

- YOLO-World、OV-DINO、GroundingDINO、OmDet-turbo论文阅读
- 相关源码阅读
- 在PaddleDetection上实现ovrtdetr主体框架
- 分析、清洗、整合训练数据
- 开始试训、调整模型结构、调整相关参数

### 下周工作

- 继续完善ovrtdetr的相关工作

### 导师点评

高效完成背景调研,并实现主体结构;下周进行优化相关工作
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
### 姓名

杨昌辉

### 实习项目

PaddleDetection 套件能力建设

### 本周工作

1. **完成CoDeformDETRHead损失部分编写**

2. **完成CO_Roihead损失部分编写**

3. **编写CoATSSHead相关代码**


### 下周工作

1. **实现以上几部分的组合,实现训练过程**


### 导师点评
基本完成各个模块复现;下周争取跑起训练
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
### 姓名
韩用功

### 实习项目
推理Predictor 及 IR Pass建设

### 本周工作

**1、修复上周pr的bug**

* 相关pr:https://github.com/PaddlePaddle/PaddleNLP/pull/8799
* 相关pr:https://github.com/PaddlePaddle/Paddle/pull/66651

**2、修复Refactor BlockInferencePredictor的bug**

* 相关pr:https://github.com/PaddlePaddle/PaddleNLP/pull/8879

**3、修复llama3.1在组网结构下bfloat16精度报错问题**

### 下周工作
1. 将fused_bias_act layer and python api从paddlenlp迁移到paddle仓库
2. 研究一下deepseek的模型结构,后续支持一下deepseek的高性能组网
### 导师点评
认真、负责,主动性强,继续加油!
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
### 姓名
马奥欣

### 实习项目
推理Predictor 及 IR Pass建设

### 本周工作

1. **运行所有模型并记录 log**
* 将 paddle官方模型下载并使用混合精度模式推理得到 log。


2. **对其中的错误进行整理**
- 在对所有模型运行后整理分类出现目前存在的错误。
2. **阅读其他 pass**
- 阅读其他 pass,研究重构代码的方案。


### 下周工作

1. 针对前面找出的问题逐一进行解决
2. 完成控制流的适配
3. 提交测试PR,进行全量模型的测试

### 导师点评
工作正常推进中,继续加油!
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
### 姓名

田川

### 实习项目

PIR 专项

### 本周工作

1. 修复 SOT 没能捕获 breakgraph 导致直接 raise 到最外层了, 收紧正确性. PR: [#67591](https://github.com/PaddlePaddle/Paddle/pull/67591)
2. 收尾 [[CodeStyle][Ruff] Ruff 新 rule 引入计划(第二期)](https://github.com/PaddlePaddle/Paddle/issues/67116)[[Typing][PEP585 Upgrade] PEP 585 标准集合泛型支持升级——Python 3.8 退场前瞻特别任务](https://github.com/PaddlePaddle/Paddle/issues/66936) 两个任务


### 下周工作

1. 在收紧正确性的前提下看能否支持非打断
2. 分析和修复 https://www.paddlepaddle.org.cn/documentation/docs/zh/guides/paddle_v3_features/sot_cn.html#id2 示例代码报其他错误的问题
3. 了解动转静体验优化现阶段已有的任务,并尝试对部分场景报错进行优化

### 导师点评

下周可以开始进行部分动转静体验优化的任务~
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
### 姓名

李伟

### 实习项目

推理Predictor 及 IR Pass建设

### 本周工作

#### paddle架构相关学习

1. 准备好paddle 环境
1. 熟悉paddle的整个流程,以及工作内容

#### 算子的 Marker 的开发 和单测的实现

1. 完成pd_op.index_select Maker的开发和单测
2. 完成了pd_op.cast Maker的开发和单测
3. 整理了需要进行开发的pd_op的算子

### 下周工作

1. 继续完成剩余pd_op.h的算子的Marker开发和实现
1. 完成Split_with_num 、multiply、 elementwise_max elementwise_min elementwise_pow elementwise_floordiv elementwise_sub elementwise_div elementwise_mod的 marker 的开发
1. 补充完 已经写好marker 的算子的单测
1. 整理 Deeplabv3_Plus-R101、 Deeplabv3_Plus-R50、Deeplabv3-R101、Deeplabv3-R50、OCRNet_HRNet-W48、PP-LiteSeg-T

1. 通过Paddle-Inference-Demo 的了解 paddle 整个框架的流程

### 详细链接

[周报pr链接](https://github.com/PFCCLab/Camp/pull/309)

### 导师评价

需要完成哪些op marker / converter的开发,能否梳理一个列表
Loading

0 comments on commit 362701d

Please sign in to comment.