Toybrick

rknn模型运行一段时间后报错

buyishengun

中级会员

积分
394
发表于 2020-8-11 10:08:27    查看: 7463|回复: 5 | [复制链接]    打印 | 显示全部楼层
加载rknn模型后,不断的喂数据,推理,取结果。过一段时间就会报错,已经碰到很多次了。
本次报错内容如下:
[2020-08-11 07:40:49.665][faceSnapshot][INFO ] trackAndMatch 耗时: 0.194000ms
[2020-08-11 07:40:49.665][faceSnapshot][INFO ] trackAndMatch 耗时: 0.179000ms
[2020-08-11 07:40:49.942][faceSnapshot][INFO ] trackAndMatch 耗时: 0.194000ms
[2020-08-11 07:40:49.943][faceSnapshot][INFO ] trackAndMatch 耗时: 0.176000ms
[2020-08-11 07:40:50.457][faceSnapshot][INFO ] trackAndMatch 耗时: 0.108000ms
[2020-08-11 07:40:50.457][faceSnapshot][INFO ] trackAndMatch 耗时: 0.096000ms
[2020-08-11 07:40:50.639][faceSnapshot][INFO ] trackAndMatch 耗时: 0.201000ms
[2020-08-11 07:40:50.639][faceSnapshot][INFO ] trackAndMatch 耗时: 0.224000ms
[2020-08-11 07:40:50.971][faceSnapshot][INFO ] trackAndMatch 耗时: 0.196000ms
[2020-08-11 07:40:50.971][faceSnapshot][INFO ] trackAndMatch 耗时: 0.230000ms
E RKNNAPI: __pthread_recv_msg,  recv(MsgHeader) fail, -9(ERROR_PIPE) < 108!
E RKNNAPI: rknn_outputs_get,  p_ctx->queue_output.size() = 0!
[2020-08-11 07:40:51.633][faceSnapshot][ERROR] rknn_outputs_get失败,错误代码[-3]
E NPUTransfer: Please open transfer first!
W RKNNAPI: rknn_destroy,  send(MsgUnload) fail, -4(ERROR_NO_DEVICE) != 108!
E NPUTransfer: Transfer interface open failed!, ret = -1
E RKNNAPI: rknn_init,  driver open fail!  ret = -1(ERROR_IO)!
[2020-08-11 07:40:51.674][faceSnapshot][ERROR] rknn初始化失败,错误代码[-3]
[2020-08-11 07:40:51.674][faceSnapshot][ERROR] 重新加载模型[model/face.rknn]失败,程序退出



调试串口打印信息如下:
debian10 login:
debian10 login:
debian10 login: [261972.753716] rk_vcodec: vpu_service_ioctl:1890: error: unknown vpu service ioctl cmd 40086c01
[264167.563719] rk_vcodec: vpu_service_ioctl:1890: error: unknown vpu service ioctl cmd 40086c01
[290346.959753] rk-vcodec ff660000.rkvdec: resetting...
[290346.960377] rk-vcodec ff660000.rkvdec: reset done
[290346.960901] rk-vcodec ff660000.rkvdec: reset done
[314275.176574] usb 2-1.1: USB disconnect, device number 3
[314276.369375] usb 2-1.1: new SuperSpeed USB device number 4 using xhci-hcd
[314276.381521] usb 2-1.1: New USB device found, idVendor=2207, idProduct=0019
[314276.382205] usb 2-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[314276.382882] usb 2-1.1: Product: rk3xxx
[314276.383357] usb 2-1.1: Manufacturer: rockchip
[314276.383778] usb 2-1.1: SerialNumber: 8321186abce84ab5


本次错误,过一段时间后,重新跑程序,可以正常跑起来,看起来像是npu设备重新挂载了,什么条件下会发生这种情况?


回复

使用道具 举报

liyang

中级会员

积分
260
发表于 2020-9-25 19:41:09 | 显示全部楼层
我也是遇到同样的问题,跑一段时间就出现(不是内存的问题,也不是api和drv版本不一致),重启又好了
E RKNNAPI: __pthread_recv_msg,  recv(MsgHeader) fail, -9(ERROR_PIPE) < 108!
E RKNNAPI: rknn_outputs_get,  p_ctx->queue_output.size() = 0!
rknn_outputs_get失败,错误代码[-3]
E NPUTransfer: Please open transfer first!
回复

使用道具 举报

buyishengun

中级会员

积分
394
 楼主| 发表于 2020-9-27 10:30:17 | 显示全部楼层
liyang 发表于 2020-9-25 19:41
我也是遇到同样的问题,跑一段时间就出现(不是内存的问题,也不是api和drv版本不一致),重启又好了
E RKN ...

更新到最新的API和DRV就可以了
回复

使用道具 举报

lvey77

注册会员

积分
73
发表于 2022-2-25 03:50:43 | 显示全部楼层
buyishengun 发表于 2020-9-27 10:30
更新到最新的API和DRV就可以了

  请问之后都一直没有出现这个问题吗?
  以前我只插一个摄像头跑模型的时候,连续运行半年都没问题,现在我插了两个摄像头,同时跑两个模型,基本跑到2天的时候就出现这个错误。
回复

使用道具 举报

jefferyzhang

版主

积分
12844
发表于 2022-2-25 08:34:05 | 显示全部楼层
lvey77 发表于 2022-2-25 03:50
请问之后都一直没有出现这个问题吗?
  以前我只插一个摄像头跑模型的时候,连续运行半年都没问题,现 ...

你这可能哪里内存溢出或者内存不足导致服务退出了。
有redmine账号的话建议联系RK FAE调试。
回复

使用道具 举报

lvey77

注册会员

积分
73
发表于 2022-2-25 15:48:04 | 显示全部楼层
jefferyzhang 发表于 2022-2-25 08:34
你这可能哪里内存溢出或者内存不足导致服务退出了。
有redmine账号的话建议联系RK FAE调试。
...

  谢谢jeffery~
  我这两天也在观察内存的变化,我使用的是论坛上yolov3-tiny的python脚本运行的模型,只是开启async_mode,两个模型分别用两个context去跑,外设两个USB摄像头。
  单个contxt起始占用的内存是410MB左右,随着时间的增加,每4.5小时,运行内存增加100MB。
  我再持续观察一下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表