Replies: 1 comment
-
根据你提供的错误信息和相关 issue(why i cna't found libmkldnn.so.0 in the paddle_inference),你的 “conv2d_transpose_bias raises an exception struct dnnl::error, could not execute a primitive” 和 “make[2]: *** 没有规则可制作目标‘.../libmkldnn.so.0’” 等问题的主要原因如下: 问题根因PaddlePaddle 自 v2.3 左右起,已将 oneDNN(DNNL,原名MKL-DNN)库的动态链接库名称改为 libdnnl.so.x,不再使用 libmkldnn.so.x。而你当前的 cmake 或构建脚本仍然在查找 libmkldnn.so.0,导致链接或构建失败。 同时,由于库名称变了,部分调用 DNNL 的行为发生了变化,各种算子的实现和底层兼容性也随之调整。如果你的环境是新版 PaddlePaddle 或新版 paddle_inference,建议完全切换到新结构。 解决办法
总结你的编译和运行问题都是因为 DNNL 库名称切换导致的,解决办法重点在于:
你可以参考相关 Issue的最新讨论,确保工程依赖最新版 PaddlePaddle 和相应的第三方库。 如后续遇到“could not execute a primitive”错误,也建议结合库版本和模型兼容性排查。 Response generated by 🤖 feifei-bot | gpt-4.1 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
conv2d_transpose_bias raises an exception struct dnnl::error, could not execute a primitive
Beta Was this translation helpful? Give feedback.
All reactions