7,916
社区成员
发帖
与我相关
我的任务
分享将 ONNX 模型转成 QNN 时,部分算子显示 “Unsupported Op”,最有效的处理顺序是什么?
建议按 “查支持列表 → 简化模型 → 替换算子 → 开启 CPU fallback → 验证精度” 的顺序处理。首先查看当前 QNN SDK 版本对应算子支持列表,确认是否真的不支持,还是版本过低。其次用 onnxsim 等工具简化模型,清理冗余节点和常量折叠:
onnxsim input.onnx simplified.onnx
然后尝试将复杂 op 拆成 HTP 支持的基础 op,例如某些自定义层、动态 shape 层或后处理层。若无法完全映射到 HTP,可将不支持算子配置为 CPU 回退,但要评估拷贝开销。最后必须做浮点模型、简化后模型、QNN 模型的输出对比,避免优化过程中引入精度偏差。参考文档:高通 QNN ONNX 转换器算子支持说明。