Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WeeklyReports] 2024.07.15~2024.07.28 周报汇总 #305

Open
22 tasks done
yinfan98 opened this issue Jul 25, 2024 · 22 comments
Open
22 tasks done

[WeeklyReports] 2024.07.15~2024.07.28 周报汇总 #305

yinfan98 opened this issue Jul 25, 2024 · 22 comments

Comments

@yinfan98
Copy link
Collaborator

yinfan98 commented Jul 25, 2024

[WeeklyReports] 2024.07.15~2024.07.28 周报汇总

请各位学员在本 issue 下以 comment 的形式填写周报摘要,ddl 本周日晚,格式示例如下:

### 姓名

xxx

### 本周工作

1. xxx
2. xxx
 
### 下周工作

1. xxx
2. xxx

### 详细周报链接:

- https://github.com/PFCCLab/Camp/pull/xxx

护航计划

项目一:PIR 专项

项目四:组合机制建设

项目五:框架API易用性提升

项目八:PaddleDetection 套件能力建设

项目十:推理Predictor 及 IR Pass建设

项目十一:模型迁移工具建设

开源之夏

项目一:飞桨PaddlePaddle-PIR适配2ONNX推理转换

项目二:飞桨PaddlePaddle-动转静支持子图高阶微分

项目三:飞桨PaddlePaddle-PIR适配VisualDL模型可视化

GLCC

项目一:为Paddle推理新增Pass管理功能

项目二:为开源大语言模型推理增加优化Pass

项目三:飞桨Save/Load体系功能升级适配PIR

项目四:飞桨新一代IR机制完善与功能单测验证

项目五:飞桨稀疏算子API升级适配PIR

项目六:动静统一自动并行支持 MoE 专家并行策略

@Yang-Changhui
Copy link
Contributor

姓名

Yang-Changhui

本周工作

  1. 熟悉paddleDetection,阅读co-detr论文以及代码
  2. 完成co-detr推理网络结构的编写,并实现了推理对齐

下周工作

  1. 继续复现co-detr训练部分代码

详细周报链接:

@zeroRains
Copy link
Contributor

姓名

卢林军

实习项目

组合机制建设和机制推全

本周工作

  1. 为sum和mean op的反向拆解添加动态shape支持
  1. 完善Reduce_as 算子计算方式
  1. 为add, subtract, multiply和 divide op的反向拆解添加动态shape支持
  1. 为concat_grad添加动态shape支持,添加split_grad动态shape的单测
  1. 为relu_grad的反向拆解过程支持动态shape,添加relu_grad和sigmoid_grad的动态shape单测
  1. 完善get_reduce_dims_from_out函数功能
  1. 为elementwise_pow_grad添加动态shape支持,添加pow_grad动态shape的单测
  1. 为softmax_grad添加动态shape支持
  1. 前向拆解lerp op并添加动态shape支持
  1. 前向拆解log_loss op并添加动态shape支持
  1. 为动态shape场景,添加GetOutputDimsForDynamicShape函数
  1. 修复stack op在旧IR组合机制下的BUG
  1. 前向拆解kldiv_loss op,并支持动态shape

下周工作

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

详细周报链接:

@MINGtoMING
Copy link
Contributor

姓名

林镇铭

本周工作

1. YOLOv10

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

2. RT-DETRv2

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

下周工作

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

详细周报链接

@Layssy
Copy link
Contributor

Layssy commented Jul 27, 2024

姓名

李伟

实习项目

推理Predictor 及 IR Pass建设

本周工作

  1. 熟悉paddle的整个流程,以及工作内容
  2. 完成pd_op.index_select Maker的开发和单测
  3. 完成了pd_op.cast Maker的开发和单测
  4. 整理了需要进行开发的pd_op的算子

下周工作

  1. 继续完成剩余pd_op.h的算子的Maker开发和实现
  2. 完成Paddle-Inference-Demo 的复现和整理

详细周报链接:

@Layssy
Copy link
Contributor

Layssy commented Jul 27, 2024 via email

@CSWYF3634076
Copy link
Contributor

姓名

王亚峰

实习项目

开源之夏 动转静支持子图高阶微分

本周工作

  1. 熟悉动转静一阶微分的过程,学习IR中的各种概念
  • 初步增加动转静一阶微分调用的新链路
  1. 熟悉动转静的过程以及前反向拆分的逻辑
  • 阅读pir.cc#SplitForwardBackward()关于前反向拆分的逻辑

下周工作

  1. 继续梳理动转静流程,探索如何在
  • 完善to_static的新请求链路,探索在pir_run_program_ad_func中完成前反向拆分(此处需调用pir_partial_program.py动转静中的grad()函数)

详细周报链接

@cse0001
Copy link
Contributor

cse0001 commented Jul 27, 2024

姓名

谢一帆

实习项目

开源之夏 飞桨PaddlePaddle-PIR适配VisualDL模型可视化

本周工作

  1. 配置开发环境,源码编译Paddle和VisualDL
  2. 阅读源码,熟悉VisualDL进行计算图可视化的设计
  3. 阅读源码,熟悉PIR进行计算图存储的设计
  4. 修改代码,完成Visual现有PIR计算图可视化方法适配Paddle3.0版本
  5. 尝试可视化具有分支结构的模型

下周工作

  1. 继续尝试可视化具有分支结构的模型,探索如何利用PIR新特性进行可视化

详细周报链接

@qzylalala
Copy link
Contributor

姓名

秦忠宇

实习项目

飞桨PaddlePaddle-PIR适配2ONNX推理转换

本周工作

  1. 梳理 Paddle PIR save/load 的逻辑,对照着 PIR Schema 学习生成的 json 文件格式。
  2. 梳理 Paddle2ONNX 项目代码,主要从 paddle2onnx.export 接口学习 PaddleParser 的实现逻辑,思考针对 PIR 进行新的方案设计。
  3. 输出技术文档,和 mentor 讨论技术选型,之前通过 framework.protopdmodel 进行解析。现在如何解析生成的 json 文件,并且尽可能的少造轮子。

下周工作

  1. 针对 Paddle2ONNX 如何对 PIR save 生成的 json 文件进行解析进行技术选型。

详细周报链接

#313

@fxfxfxfxfxfxfxfx
Copy link
Contributor

姓名

冯潇

实习项目

动静统一自动并行支持MoE专家并行策略

本周工作

  1. 配置开发环境,熟悉Paddle

    • 从源码编译paddle,并熟悉相关代码
    • 编写脚本方便环境重启后上下文的恢复
  2. 熟悉自动并行和Moe

    • 熟悉自动并行和MoE相关概念
    • 阅读相关文档,了解其实现方式
    • 跑通相关单元测试
  3. 熟悉qwen2_moe

下周工作

  1. 将SparseMoEBlock改成自动并行版本并对其编写单元测试

详细周报链接

#315

@aooxin
Copy link
Contributor

aooxin commented Jul 28, 2024

姓名

马奥欣

本周工作

  1. 熟悉项目代码以及需要用到的工具
  2. 学习 Paddle 新 IR的相关知识

下周工作

  1. 针对所有的模型进行测试,定位问题的出现
  2. 对定位到的问题进行解决方案的设计,并和导师沟通可行性。

详细周报链接:

@Xuxuanang
Copy link
Contributor

姓名

许轩昂

实习项目

项目十一:模型迁移工具建设

本周工作

  1. 熟悉Pacovert源码,熟悉开发流程以及步骤,熟悉工作安排
  2. 配置Paconvert开发环境

下周工作

  1. 单测规范化建设
  2. 框架api问题记录

导师点评

请联系导师填写

@Hanyonggong
Copy link
Contributor

Hanyonggong commented Jul 28, 2024

姓名

韩用功

实习项目

推理Predictor 及 IR Pass建设

本周工作

int8 matmul cublaslt全局离线调优策略

1、将离线搜索工具整理合入到EfficientInfer/PaddleNLP自定义算子实现

2、补充PR描述(使用方法、cache file文件格式等)

3、当matmul cublasl 策略shape超出cache file最大值时走默认algo config并补充单测

详细周报链接

@NKNaN
Copy link
Contributor

NKNaN commented Jul 28, 2024

姓名

李睿文

本周工作

  1. 修复 F.unpool1d 存在的 bug
  2. 针对 Layer.named_sublayers/Layer.named_parameters/Layer.named_buffers 的功能增强
  3. 针对 paddle.io.BatchSampler 的功能增强
  4. 针对 F.pad 的功能增强
  5. 针对 paddle.linalg.matrix_rank 的功能增强

下周工作

  1. 继续完善 F.padpaddle.linalg.matrix_rank 的修改
  2. 全面升级 torch.scatter/torch.scatter_paddle.put_along_axis/paddle.put_along_axis_ 的 API 转换规则,为 paddle.put_along_axis_ 添加 broadcast 参数等。
  3. paddle.linalg.lu 若返回 info,返回的 info 需改为 0D Tensor,不兼容升级需分析存量代码。

详细周报链接:

@gouzil
Copy link
Contributor

gouzil commented Jul 28, 2024

姓名

gouzil

本周工作

  1. 对于 name 获取的统一
  • 优化 GetValueName 相关签名
  • GetValueName 相关签名下沉至 PIR utils
  • 在 run_program_op_node 中替换原有的 name 查找逻辑

下周工作

  • pir.ccGetNameMap 的清理
  • run_program_op_node.h 中考虑下加 assert,确保一个 Value 只有一个 name(或者在 Python 端做也可以)

详细周报链接:

@AndPuQing
Copy link
Contributor

姓名

梁嘉铭

实习项目

PIR 专项

本周工作

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

  1. Adapt adadelta/adagrad/adam/adamax Unit Test

    • 修复 adadelta/adagrad/adam/adamax 单元测试,使其能够在 PIR mode 下正常运行
    • 其中阅读了paddle.static.amp.decorate的部分实现。
  2. Adapt adamw/binary_cross_entropy_with_logits_op/blha_get_max_len_op/assign_pos unit tests

    • 修复 adamw/binary_cross_entropy_with_logits_op/blha_get_max_len_op/assign_pos 单元测试,使其能够在 PIR mode 下正常运行
    • 阅读了 binary_cross_entropy_with_logits_opprim op 实现
  3. Fix pull_box_sparse/asgd unit tests

    • 修复 pull_box_sparse/asgd 单元测试,使其能够在 PIR mode 下正常运行
    • 了解了 _C_ops_eager_ops 的区别。在调试过程中根据报错信息还阅读了op_gen.py等部分实现,并为其添加了Typing注释,使代码更加清晰。
    • 其中根据错误信息,修复了 pull_box_sparsedata_type 问题
  4. CINN编译器符号推导

    • 了解了 CINN 编译器的符号推导基本组件,并为其添加了 Eigh、Eigvalsh、Eigvals 符号推导支持

下周工作

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

  2. 深入阅读PIR相关组件

详细周报链接

@ooooo-create
Copy link
Contributor

姓名

方国勇

本周工作

  1. 熟悉 Paddle 仓库和 cmake

  2. 修复 PIR 下 PR-CE-Framework 测试流水线

  3. 修复 PIR 单测

    • 修复大多数使用 static.nn 下不会支持 PIR 的API导致单测失败的这类问题,使用更加具体的 API 来替换。
    • 修复了一些 amp 单测,阅读 PIR 适配 AMP 的方案

下周工作

  1. 继续完成单测中 static.nn.* 下的 API 替换,整理替换方法
  2. 继续推进 PIR 单测修复

详细周报链接:

@lszxb
Copy link
Contributor

lszxb commented Jul 28, 2024

姓名

刘斯哲

本周工作

  1. 使用PaddleNLP的demo跑通大语言模型的BF16推理
  2. 对目前demo中的静态图推理过程进行profile
  3. 调研W4A8KV4系统QServe的优化点

下周工作

  1. 继续对目前demo中的静态图推理过程进行profile,并寻找可能的优化方案

详细周报链接:

@eggman-1024
Copy link
Contributor

eggman-1024 commented Jul 28, 2024

姓名

张瑞涛

实习项目

飞桨Save/Load体系功能升级适配PIR

本周工作

  1. 熟悉PIR体系组件

    • 熟悉PIR体系下Program, Value, Operation等概念
  2. 熟悉梳理 Paddle PIR load的逻辑

    • 理解了调用load函数后的整个反序列化流程
    • 理解了jit目录下各代码文件逻辑(除engine外)

下周工作

  1. 理解engine目录下代码
  2. 理解运行单测文件时添加的环境变量FLAGS_enable_pir_api=True在何处起作用
  3. 在相关源文件中的ProgramDesc、VarDesc、FunctionInfo相关处修改代码以适配PIR体系

详细周报链接:

#327

@sgzGary
Copy link

sgzGary commented Jul 28, 2024

姓名
沈辰邦

实习项目
飞桨新一代IR机制完善与功能单测验证

本周工作

1.熟悉项目流程以及开发工具
2.尝试编译Paddle

下周工作

  1. 对pir进行模型分析,问题定位
  2. 尝试解决问题

详细周报链接:
#328

@yinfan98
Copy link
Collaborator Author

姓名

尹帆

本周工作

  1. 学习竞品文档和旧IR实现的Python端Infra,学习如何为新PIR实现Python端pass。
  2. 产出文档

下周工作

  1. 学习pir.cc暴露的接口,并分析哪些可以复用
  2. 实现一个matmul + transpose IR

详细周报链接:

@xue-yun-liang
Copy link
Contributor

xue-yun-liang commented Jul 30, 2024

姓名

薛云亮

本周工作

  1. 编译并成功跑通常用模型推理(动态图、动转静、静态图)

  2. 通过打印日志的调试方式来尝试修复test_wint()单测错误

    最初的目标是对比commit id为2ef8aba和commit id为417117eac下单测test_wint()的精度错误问题,由于最初在417117eac下该单测可以通过,但是在2ef8aba下失败。但是,后来由于考虑到develop分支下最新的代码已经改了很多,所以周五将目标改为对比最新的commit和417117eac。在周五的调试过程中也发现,最新commit下部分测试用例可以通过,而2ef8aba下无可通过测试用例,因此两个commit的无法通过单测的情况也不尽相同。

下周工作

  1. 继续修复单测test_wint()的精度工作
  2. 完成1后,开始排查llama3、qwen2等模型在推理时的问题

详细周报链接

@epiphanyer
Copy link
Contributor

姓名

曾志鹏

本周工作

  1. 对一些动静统一的python api,补全静态图单测的任务
  2. 对于仅在动态图下有定义的api,需要对python API进行适配升级,并补全在动态图和静态图下的单测

下周工作

1.继续完成Sparse算子Python API适配工作,编写PIR模式下静态图下的单元测试。

详细周报链接:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests