-
Notifications
You must be signed in to change notification settings - Fork 147
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
[NPU]paddle适配昇腾910B推理没有cpu快 #1118
Comments
请问您是用的推理模型和PaddleCustomDevice的版本是什么?可以跑下 NPU推理比CPU慢的原因可能有以下几种可能
对于(1)的修复办法有2个
对于(2)的情况,暂时没有其他修复办法需要补齐缺失算子在NPU上的kernel适配代码,您可以把定位出来fallbacking to CPU的算子list发出来,我们需要评估下适配的可能性和工作量 (会存在NPU算子库中没有此类算子的情况,这样就没有办法适配)。 如果以上2个方法都不适用,那您这里也可以开启NPU Profiling的功能,通过昇腾CANN的profiling工具看下性能瓶颈,再针对性的优化。昇腾CANN的profiling工具可以参考这个回答中的例子,#785 ,并参考昇腾的官网文档进行数据采集之后的解析 https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/80RC1alpha003/devaids/auxiliarydevtool/atlasprofiling_16_0010.html |
但是换成别的长度的输入,也还是会如同第一次访问等待30s。 您好,这个属于正常现象,因为昇腾NPU的算子op cache就是会针对不同的输入输出shape进行JIT的op compile 和 cache,所以当输入输出变化的时候,就会需要重新进行 op compile 和 cache,因此耗时又会变得很长。 我们自己实际在进行推理耗时测试的时候,通常会针对所有可能的input shape都进行一次warm up,尽量让本地的kernel_meta_xxx 目录能把所有算子的输入输出shape的组合都预先cache到本地,之后在进行推理测试的时候会快很多了。 另外看了下这个commit id 9e64916 是 Tue Jan 23 09:44:54 2024 的,这个时间有点早了可能很多aclnn的算子都还没有接入,可以尝试更新到最新的PaddleCustomDevice develop分支的代码,大部分算子可能都已经升级为aclnn算子了,可以减少很多op compile和cache的消耗。 |
您好, 我也遇到了相同的问题,可以请求帮助分析一下吗? 我的型号是910B1, 最新的commit id: 4091df3, 当我运行msprof --application="python tests/test_LeNet_MNIST.py" --output=ascend_log时输出的日志和readme中差不多, 但是msprof采集到的指标如下,Iteration Number和Top Time Iteration这两项都没有获得信息, 我观察到调用过程中npu-smi info的AI Core是没有变化的, 只有功率在变化 |
您好,关于msprof采集信息缺失的问题,可能需要到华为昇腾的社区咨询一下,建议可以到 https://gitee.com/ascend/modelzoo/issues 这里open相关issue咨询华为昇腾的工程师,个人猜测可能是profiling的某个metric缺失导致的信息采集不全。咨询华为昇腾工程师之后,可以通过 FLAGS_npu_profiling_dtypes 和 FLAGS_npu_profiling_metrics 这两个的环境变量把相关的metric给添加上,或者也可以直接修改 https://github.com/PaddlePaddle/PaddleCustomDevice/blob/develop/backends/npu/runtime/runtime.cc#L31 这里的源码文件来添加相关的metrics信息。 |
好的, 非常感谢您 |
您好,请问这个issue是否有解决您的问题,如果没有更多问题,请帮忙关闭此ISSUE,感谢 :) |
请问这个具体怎么操作?是程序处理10次图片么 |
paddle相关库版本如下:
npu-smi信息如下:
如题,相同的代码,使用npu启动,推理延时很高,比cpu启动的时候还要高。并且输入新的文本信息进行推理时,就如同第一次推理一样,需要30-50s。
下面是我用npu启动,推理的一些延时截图
下图是cpu启动的推理延时截图
下面是我使用paddle.inference.Config设置npu的截图
求懂paddle-npu的大佬帮忙看看是哪里不对劲吧!!!
The text was updated successfully, but these errors were encountered: