rockchip-linux / rknpu2

BSD 3-Clause "New" or "Revised" License
597 stars 128 forks source link

batch_size>1时在3588上崩溃 #108

Open ZYX-MLer opened 9 months ago

ZYX-MLer commented 9 months ago

我在docker上连接开发板调用rknn-toolkit2,可以正常运行batch=2的模型,但是在c++环境中运行到 int ret = rknn_run(ctx, NULL);直接崩溃,没有显示log信息,请问应该如何排查?谢谢。同样的模型batch=1的时候在c++中也是正常的,

我在docker中连接开发板调试显示: RKNN VERSION: D RKNNAPI: API: 1.5.2 (8babfea build@2023-08-25T02:31:12) D RKNNAPI: DRV: rknn_server: 1.5.2 (8babfea build@2023-08-25T10:30:12) D RKNNAPI: DRV: rknnrt: 1.5.2 (c6b7b351a@2023-08-23T15:27:35)

在c++环境调用 rknn_sdk_version sdk_ver; ret = rknn_query(ctx, RKNN_QUERY_SDK_VERSION, &sdk_ver, sizeof(sdk_ver)); 显示: api_version = {char [256]}1.5.2 drv_version = {char [256]}0.8.2

ret = rknn_query(ctx, RKNN_QUERY_MEM_SIZE, &mem_size, sizeof(mem_size)); mem_size = {rknn_mem_size} total_weight_size = {uint32_t} 2816192 total_internal_size = {uint32_t} 6627072 total_dma_allocated_size = {uint64_t} 6201344 total_sram_size = {uint32_t} 0 free_sram_size = {uint32_t} 0 reserved = {uint32_t [10]}

S0soo commented 1 month ago

您好,请问batch=2时,输入的buf是如何设置的,我尝试使用std::vector来接收两个image,并把vector.data赋给input.buf[],能执行但是输出有问题,也尝试将两个Mat.data memcpy 到一个uchar* buf内,同样能执行但是输出有问题,请问您是如何设置input buf的