NXP MCU 技术william hill官网
直播中

张娜

7年用户 978经验值
私信 关注
[问答]

在i.MX93 EVKCM上的EthosU NPU上推断AI模型时遇到错误怎么解决?

尝试在 i.MX93 EVKCM 上的 EthosU NPU 上推断 AI 模型时遇到错误。
使用的 BSP:Linux imx93evk 6.1.1+g29549c7073bf
首先,我从 tensorflow-lite 示例文件夹编译了 mobilenet 模型:
root@imx93evk:/usr/bin/tensorflow-lite-2.10.0/examples#vela mobilenet_v1_1.0_224_quant.tflite
输出:
mobilenet_v1_1.0_224_quant 加速器配置的网络摘要
Ethos_U65_256
系统配置内部默认
内存模式内部默认
加速器时钟 1000 MHz
设计峰值 SRAM 带宽 16.00 GB/s
设计峰值 DRAM 带宽 3.75 GB/s
使用的 SRAM 总量 370.91 KiB
使用的 DRAM 总量 3622.39 KiB
CPU 运算符 = 0 (0.0%)
NPU 运算符 = 60 (100.0%)
平均 SRAM 带宽 4.73 GB/s
输入 SRAM 带宽 11.96 MB/批 权
重 SRAM 带宽 9.70 MB/批
输出 SRAM 带宽 0.00 MB/批
总 SRAM 带宽 21.77 MB/批
每个输入的总 SRAM 带宽 21.77 MB/推理(批大小 1)
平均 DRAM 带宽 2.13 GB/s
输入 DRAM 带宽 1.52 MB/批次 权
重 DRAM 带宽 3.23 MB/批次
输出 DRAM 带宽 5.06 MB/批次
总 DRAM 带宽 9.82 MB/批次
每个输入的总 DRAM 带宽 9.82 MB/推理(批次大小 1)
神经网络 macs 572406226 MACs/batch
Network Tops/s 0.25 Tops/s
NPU 周期 3891214 周期/批
SRAM 访问周期 1020041 周期/批
DRAM 访问周期 1677430 周期/批
片上闪存访问周期 0 周期/批 片
外闪存访问周期 0 周期/批
总周期 4604278 周期/批
批量推理时间 4.60 毫秒,217.19 次推理/秒(批量大小 1)
然后我尝试了 tflite label_image 示例:
root@imx93evk:/usr/bin/tensorflow-lite-2.10.0/examples# ./label_image -m mobilenet_v1_1.0_224_quant_vela.tflite external_delegate_path=/usr/lib/libethosu_delegate.so
输出:
信息:已加载模型 mobilenet_v1_1.0_224_quant_vela.tflite
信息:已解决报告
错误:Ethos_u 推理失败
错误:节点号 0 (ethos-u) 调用失败。
错误:无法调用 tflite!
我还尝试了引发以下错误的 inference_runner 脚本:
./inference_runner -n ./output/mobilenet_v1_1.0_224_quant_vela.tflite -i grace_hopper.bmp -l labels.txt -o output.txt
发送 Ping
发送版本请求
发送能力请求
错误:IOCTL 失败

有什么建议我可能做错了吗?

回帖(1)

fanB

2024-3-29 18:11:09
针对此问题,可以尝试以下解决方法:

1. 确认NPU驱动程序已经正确安装,且版本与当前系统匹配。

2. 确认机器学习框架和模型是否与硬件兼容。EthosU NPU支持的机器学习框架和模型可以在NXP官网上查看。

3. 确认模型是否加载成功。可以在代码中添加一些打印语句,查看模型加载的情况。

4. 确认输入数据是否符合模型要求。可以检查输入数据的形状和类型是否与模型输入要求一致。

5. 如果出现错误消息,请查阅错误消息并尝试找到解决方案。可以在官网或者社区william hill官网 中寻求帮助。

6. 尝试使用其他模型进行推断,以确定问题是否出在模型本身。可以使用一些开源的模型进行测试,比如mnist手写数字识别等。
举报

更多回帖

×
20
完善资料,
赚取积分