leafqycc / rknn-multi-threaded

A simple demo of yolov5s running on rk3588/3588s using Python (about 72 frames). / 一个使用Python在rk3588/3588s上运行的yolov5s简单demo(大约72帧/s)。
Apache License 2.0
238 stars 42 forks source link

NPU 使用率异常 #8

Closed xxysxka closed 10 months ago

xxysxka commented 11 months ago

您好,我设置并发数量>1 的时候就会出现报错

E RKNN: [06:51:01.403] failed to submit!, op id: 1, op name: Conv:Conv_0, flags: 0x5, task start: 0, task number: 170, run task counter: 0, int status: 0, please try updating to the latest version of the toolkit2 and runtime from: https://eyun.baidu.com/s/3eTDMk6Y (PWD: rknn)

同时查看NPU 使用情况会发现 他并不是使用多个 NPU, 而是单个NPU 100% image

请问应该如何解决呢?

leafqycc commented 11 months ago

看起来似乎是版本不兼容导致的报错?您的模型的rknn版本是多少呢? 或者尝试看看高版本的能否顺利运行https://github.com/leafqycc/rknn-cpp-Multithreading

xxysxka commented 11 months ago

rknn driver 的版本 是 0.9.2, toolkit_lite 试过 1.5.2/1.5.0 , 也使用过您写的C++ repo, 都会出现同样的报错。

我最后定位到是 NPU core2, core3 出现问题。 同样yolov5示例代码模型可顺利调用core1 进行推理,但是当调用core2/core3进行推理的时候就会出现 failed to submit!的报错, 但是还没确认是 2, 3核的设置问题,还是质量问题。

llgnll commented 10 months ago

老哥解决了吗,我也遇到同样的问题

xxysxka commented 10 months ago

老哥解决了吗,我也遇到同样的问题

没有, 目前还没解决, 重新买了块其他家板子用着先了。

排除了不是多线程的问题, 官方yolo例子在一核/二核上跑 就会出现 failed to submit 的报错。 也应该不是驱动问题,试过几个驱动版本,

llgnll commented 10 months ago

你们原来是哪家的板子,我们是nanoPC-T6,0核能跑,1、2核一跑就 failed to submit 。你们换的现在这块板子能用吗

xxysxka commented 10 months ago

你们原来是哪家的板子,我们是nanoPC-T6,0核能跑,1、2核一跑就 failed to submit 。你们换的现在这块板子能用吗

原本是NanoPi R6S ,重新买了块firefly的 都是RK3588。 但我看其他人的Nano Pi R6S 也都玩得好好的 😮‍💨

llgnll commented 10 months ago

你们原来是哪家的板子,我们是nanoPC-T6,0核能跑,1、2核一跑就 failed to submit 。你们换的现在这块板子能用吗

原本是NanoPi R6S ,重新买了块firefly的 都是RK3588。 但我看其他人的Nano Pi R6S 也都玩得好好的 😮‍💨

所以你们现在的板子能跑多线程吗,是的话我们也换一块板子了

xxysxka commented 10 months ago

能呀 三核都能正常使用。

xxysxka commented 10 months ago

close the issues as the error does not come from multithread.