Closed ronny1996 closed 4 months ago
希望Paddle在set_constant_with_place中支持插件的锁页内存调用,从而可以优化网路训练时clear_grad的性能。
https://github.com/PaddlePaddle/Paddle/pull/52872 支持 MP,c_* 算子使用小算子组合实现,性能可能较差
Concat & Split 存在大量 memcpy_d2d 调用
可以开发类似于pytorch中set_option的功能,开启部分算子编译选项 参考链接:https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/63RC2alpha002/ptmoddevg/ptmigr/ptmigr_0094.html
主框架是使用的 flat_hash_map 中使用的 https://github.com/PaddlePaddle/Paddle/blob/develop/paddle/utils/flat_hash_map.h#L743 deallocate_data 在 LLVM 中是非法的
希望Paddle在set_constant_with_place中支持插件的锁页内存调用,从而可以优化网路训练时clear_grad的性能。
https://github.com/PaddlePaddle/Paddle/pull/55089 使用full kernel代替memcpy
https://github.com/PaddlePaddle/PaddleNLP/tree/develop/llm/bloom#%E6%A8%A1%E5%9E%8B-finetune 运行bloom-560MB爆显存
你好,这个建议提一个issue,贴一下运行设备/版本/配置
https://github.com/PaddlePaddle/PaddleNLP/tree/develop/llm/bloom#%E6%A8%A1%E5%9E%8B-finetune 运行bloom-560MB爆显存
你好,这个建议提一个issue,贴一下运行设备/版本/配置
已建新issue:https://github.com/PaddlePaddle/PaddleCustomDevice/issues/736
add kernel要求支持 inplace https://github.com/PaddlePaddle/Paddle/pull/56205
建议init_devices()失败时能fallback回cpu版paddlepaddle,给出显著提示就好,而不是直接crash
Context中自定义内容 https://github.com/PaddlePaddle/Paddle/issues/54709 是否会考虑支持
Context中自定义内容 PaddlePaddle/Paddle#54709 是否会考虑支持
你好,目前新增这个接口有些困难,其依赖的 StatRegistry 采用硬编码的方式只支持 16 个设备,这与 custom device 插件式设计冲突,必要的时候我们会增加这个接口,请问下,目前主要什么场景需要用到该接口?
Context中自定义内容 PaddlePaddle/Paddle#54709 是否会考虑支持
你好,目前新增这个接口有些困难,其依赖的 StatRegistry 采用硬编码的方式只支持 16 个设备,这与 custom device 插件式设计冲突,必要的时候我们会增加这个接口,请问下,目前主要什么场景需要用到该接口?
感谢回复,只支持 16 个设备这个点也无法满足我们的需要,我们的device单机就会到32个,所以我们先扩了 StatRegistry到32; Context中generator IncrementOffset我们添加了PADDLE_WITH_CUSTOM_DEVICE暂时能满足使用; allocator我理解是设计上是否给CustomDevice开放这种使用场景,所以咨询下。
需要融合算子的简易Pass
需要融合算子的简易Pass
这个建议参考 https://github.com/PaddlePaddle/PaddleCustomDevice/blob/develop/backends/npu/tests/unittests/test_custom_pass_npu.py#L25 这个单测文件,可以通过python接口定义自定义Pass并注册到框架。
需要融合算子的简易Pass
这个建议参考 https://github.com/PaddlePaddle/PaddleCustomDevice/blob/develop/backends/npu/tests/unittests/test_custom_pass_npu.py#L25 这个单测文件,可以通过python接口定义自定义Pass并注册到框架。
问题是我不用Python
Custom Device 还缺少INT8量化支持的pass
需要融合算子的简易Pass
这个建议参考 https://github.com/PaddlePaddle/PaddleCustomDevice/blob/develop/backends/npu/tests/unittests/test_custom_pass_npu.py#L25 这个单测文件,可以通过python接口定义自定义Pass并注册到框架。
问题是我不用Python
C++的cuda pass,Custom Device也能正常使用了。
Paddle集成CustomDevice时,主要考虑对不同硬件通用,部分实现性能较低,这里收集硬件期望优化的代码