7,916
社区成员
发帖
与我相关
我的任务
分享在高通边缘平台上部署小模型时,为什么有时 NPU 加速效果不明显,甚至比 CPU 慢?
小模型 NPU 加速不明显,主要原因是 NPU 更适合高算子密度、高并行计算的任务,而小模型的瓶颈往往来自调度开销、数据拷贝和启动延迟。如果模型计算量很小,HTP 初始化、上下文加载、输入输出拷贝和调度时间会占比很高,导致端到端延迟不如优化后的 CPU。常见优化思路:第一,避免每次推理都重新加载模型,提前初始化并复用上下文;第二,减少输入输出数据拷贝,使用共享内存或连续内存;第三,合并多次小推理为 batch 推理,提高 HTP 利用率;第四,评估是否适合将部分轻量算子保留在 CPU,把 HTP 留给更重的计算部分。参考判断命令:
qnn-net-run --model small_model.so --input_list inputs.txt --iterations 100
参考文档:高通 HTP 小模型部署与性能调优说明。