[DIPU] 关于linear custom_fallback导致的错误。
Reinerzhou opened this issue · 0 comments
Reinerzhou commented
背景
dipu对有针对部分算子的 custom_fallback 逻辑。
问题描述
在这个commit将linear的custom_fallback设为true之后。
deeplink.framework/dipu/scripts/autogen_diopi_wrapper/diopi_functions.yaml
Lines 747 to 748 in 583de90
在燧原以及华为上运行llama_finetune时会有如下报错:
问题分析
由于dipu存在自定义的dispatch逻辑(包括custom_fallback),影响了dynamo中对meta key的dispatch行为,在linear设为custom_fallback后,会影响linear_backward的dispatch行为:
改进建议
custom_fallback的逻辑主要在这里:
deeplink.framework/dipu/torch_dipu/csrc_dipu/aten/RegisterDIPU.hpp
Lines 63 to 79 in 583de90
通过增设一个环境变量DIPU_DISABLE_CUSTOM_FALLBACK以及disable_custom_fallback_ops_list在必要时禁用custom_fallback的逻辑(默认开启custom_fallback)。