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

PaddleOcr在使用 mkldnn后精度下降 #10497

Closed
mingyi218 opened this issue Jul 28, 2023 · 7 comments
Closed

PaddleOcr在使用 mkldnn后精度下降 #10497

mingyi218 opened this issue Jul 28, 2023 · 7 comments
Assignees
Labels
expneeded need extra experiment to fix issue good first issue Good for newcomers status/close

Comments

@mingyi218
Copy link

请提供下述完整信息以便快速定位问题/Please provide the following information to quickly locate the problem

  • 系统环境/System Environment:Windows11
  • 版本号/Version:Paddle:2.5.0 PaddleOCR:2.6.1.3 问题相关组件/Related components:mkldnn
  • 运行指令/Command Code:Pycharm Python运行 use_angle_cls=False,use_gpu=False,lang="ch", 其他都是默认
  • 完整报错/Complete Error Message:没有报错

对多张手机截屏上的文字进行识别
像素2340x1080
enable_mkldnn=False 时:用时3.2s 准确率在百分之98以上
enable_mkldnn=True 时:用时0.5s 同一张图第一次运行 准确率百分之60不到 第二次运行直接准确率不到百分之20
请问下这个是和模型有关系 比如有针对mkldnn的训练模型 还是说和库版本有关系 比如有mkldnn支持好的paddlepaddle
因为我要做的项目可能会在多个不同配置的电脑上运行,使用GPU不现实(各种系统版本,各种cuda版本,用户不会装)
不用mkldnn的话速度确实满足不了项目的需求(需要并发同时处理多张图片)目前已经采用了多进程处理 但还是不理想
望开发组能为我指点一二,万分感谢

@ToddBear ToddBear added good first issue Good for newcomers good issue expneeded need extra experiment to fix issue and removed good issue labels Jul 31, 2023
@raoyutian
Copy link
Contributor

使用v2.5版本的的预测库无论v3、v4模型,开启MKL加速后精度大幅降低,已经在C++代码复现并解决了。
python可以参考修改。
tools\infer\utility.py
大概269行,
在代码下面config.delete_pass("matmul_transpose_reshape_fuse_pass")
添加两行代码:
config.delete_pass("fc_mkldnn_pass")
config.delete_pass("fc_act_mkldnn_fuse_pass")

参考 PaddlePaddle/Paddle#55281

@xinyu-intel
Copy link

xinyu-intel commented Aug 2, 2023

@mingyi218 Hi, We're glad to hear that oneDNN can bring better performance. Can you please provide reproducing steps of your workload as well as your hardware configuration(cpu, memory, etc) so that I can try to fix the bug.

BTW. in the latest develop brach, a bug related to fc has been fixed, you can also try to verify if it can fix your accuracy issue. PaddlePaddle/Paddle#55504

@raoyutian
Copy link
Contributor

该问题已经在2.5.1版本的预测库中修复。实测有效 。
PaddlePaddle/Paddle#55504

使用v2.5版本的的预测库无论v3、v4模型,开启MKL加速后精度大幅降低,已经在C++代码复现并解决了。 python可以参考修改。 tools\infer\utility.py 大概269行, 在代码下面config.delete_pass("matmul_transpose_reshape_fuse_pass") 添加两行代码: config.delete_pass("fc_mkldnn_pass") config.delete_pass("fc_act_mkldnn_fuse_pass")

参考 PaddlePaddle/Paddle#55281

@xinyu-intel
Copy link

该问题已经在2.5.1版本的预测库中修复。实测有效 。 PaddlePaddle/Paddle#55504

使用v2.5版本的的预测库无论v3、v4模型,开启MKL加速后精度大幅降低,已经在C++代码复现并解决了。 python可以参考修改。 tools\infer\utility.py 大概269行, 在代码下面config.delete_pass("matmul_transpose_reshape_fuse_pass") 添加两行代码: config.delete_pass("fc_mkldnn_pass") config.delete_pass("fc_act_mkldnn_fuse_pass")
参考 PaddlePaddle/Paddle#55281

PaddlePaddle/Paddle#55504 merge到develop branch里了,2.5.1上应该不包含这个fix。

@zrp2023
Copy link

zrp2023 commented Nov 24, 2023

使用v2.5版本的的预测库无论v3、v4模型,开启MKL加速后精度大幅降低,已经在C++代码复现并解决了。 python可以参考修改。 tools\infer\utility.py 大概269行, 在代码下面config.delete_pass("matmul_transpose_reshape_fuse_pass") 添加两行代码: config.delete_pass("fc_mkldnn_pass") config.delete_pass("fc_act_mkldnn_fuse_pass")

参考 PaddlePaddle/Paddle#55281

实测有效,准确率提升很多,速度未知待测试

@wangsrGit119
Copy link

python端使用 Paddle 2.4.2 模型用v3 精度还可以,但是升级Paddle到2.5.2后 精度大幅下降。。。

@UserWangZz
Copy link
Collaborator

该issue长时间未更新,暂将此issue关闭,如有需要可重新开启。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
expneeded need extra experiment to fix issue good first issue Good for newcomers status/close
Projects
None yet
Development

No branches or pull requests

9 participants