Toybrick

楼主: panziwen86

在rk3399pro上使用rknn的接口rknn_init内部概率性崩溃!!!

panziwen86

注册会员

积分
53
楼主
发表于 2020-6-5 10:44:48    查看: 34527|回复: 32 | [复制链接]    打印 | 显示全部楼层
因为在项目中发现rknn_init接口出错然后引起程序直接崩溃,然后更换很多个模型,升级rknn_api发现都有这个问题,然后直接用官方提供的rknn_apiSDK中提供的rknn_ssd.cpp,稍微修改,多进程反复使用rknn_init初始化模型,发现也有此问题,而且时间长了npu_transfer_proxy这个npu的服务也会崩溃,而且有时候一个进程在调用rknn_api时出错或者崩溃了,会影响其他使用rknn_api的进程,不管是rknn_api调用崩溃,还是npu_transfer_proxy崩溃,都必须重启系统才能恢复,这在线上是一个非常严的问题,希望官网能及时解决,下面附件中是我修改的测试用例,和崩溃现象图片。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

panziwen86

注册会员

积分
53
沙发
 楼主| 发表于 2020-6-5 13:17:39 | 显示全部楼层
jefferyzhang 发表于 2020-6-5 11:00
1. 什么板子
2. 什么固件
3. 什么系统

您好,板子是TB-96AI Debian10固件v1.0-20191126
回复

使用道具 举报

panziwen86

注册会员

积分
53
板凳
 楼主| 发表于 2020-6-5 15:40:01 | 显示全部楼层
leok 发表于 2020-6-5 14:43
升级完rknn,主机需要重启,或者先卸载旧rknn再升级新rknn,保证npu_transfer_proxy是新的,同时npu_transf ...

您好,应该都是最新的:
npu_transfer_proxy:
I NPUTransfer: Starting NPU Transfer Proxy, Transfer version 2.0.0 (8f9ebbc@2020-04-03T09:12:43)
rknn_api:
D RKNNAPI: RKNN VERSION:
D RKNNAPI:   API: 1.3.2 (9eebd73 build: 2020-04-02 14:54:02)
D RKNNAPI:   DRV: 1.3.1 (6ebb4d7 build: 2020-01-02 09:37:58)
我主机重启过,也是一样的问题。我现在大概是四个进程测试,跑几个小时,npu_transfer_proxy这个进程就不见了。。。
回复

使用道具 举报

panziwen86

注册会员

积分
53
地板
 楼主| 发表于 2020-6-8 09:40:09 | 显示全部楼层
leok 发表于 2020-6-5 15:59
1、首先查看下内存;
2、尝试一个进程验证是否也有同样问题;

你好,查看了内存没有异常,一个进程测试验证,发现也有问题,只是发生的时间可能长点,
上周五开始测试,周一过来发现测试进程崩溃了,但npu_transfer_proxy这个进程还在,重启测试
进程发现直接崩溃在rknn_init接口里了,然后重启npu_transfer_proxy,再启动测试进程,发现
还是有问题,rknn_init接口一直报错,只能重启系统才能恢复正常了,测试程序崩溃日志已上传
附件中,测试程序代码就是之前上传的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

panziwen86

注册会员

积分
53
5#
 楼主| 发表于 2020-6-8 21:35:33 | 显示全部楼层
jefferyzhang 发表于 2020-6-8 17:25
因为我们不是NPU的人啊,NPU那边就是说了不能频繁建立和销毁模型,你要我怎么弄?
如果你有FAE渠道,建议 ...

你好,我这边再给你们提供一个简单完整的测试用例,代码只有几十行,只需要拷贝到系统里,执行make install编译,
然后进入test/bin目录执行./start.sh脚本就可以运行起来,可以拷贝test目录,多进程测试。
现在测试发现的问题是rknn_api和npu服务进程都存在崩溃现象,而且是必现,不管是参数错误、内存不够还是
其它问题,都不应该崩溃,最多是返回错误,崩溃肯定是程序问题,希望尽快解决!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

panziwen86

注册会员

积分
53
6#
 楼主| 发表于 2020-6-9 09:59:17 | 显示全部楼层
jefferyzhang 发表于 2020-6-8 22:38
1. 本社区是工程师交流的地方,不是提交bug的地方,NPU部门同事只会偶尔会上来看看问题。
2. 咨询过NPU的 ...

1、这只是我的测试代码,为了更快的复现问题,以便解决,我们在具体项目中并没有这么频繁的init和destroy,但同样也出现此问题;
2、你说不允许频繁的init和destroy,sdk的文档中没这么写吧,那多少频率算频繁呢?NPU来不及释放可以返回错误码,不一定要崩溃吧,感觉这都说不过去呀;
3、我们没有要求你们现在就立马解决问题,只是希望你们向你们的FAE反馈一下问题,而你直接就说这是我们使用上的问题,要我自己联系FAE,但我也没有联系方式呀,更没有讨论的平台啊。
回复

使用道具 举报

panziwen86

注册会员

积分
53
7#
 楼主| 发表于 2020-6-10 09:21:58 | 显示全部楼层
jefferyzhang 发表于 2020-6-9 18:59
早都反馈过了,不是你一家有这问题的,上一个客户直接FAE报的,他们看完就是说NPU不停初始化不停销毁内存 ...

好的,谢谢了
回复

使用道具 举报

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

本版积分规则

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


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