专栏算法工具链执行bin文件的推理时遇到的问题

执行bin文件的推理时遇到的问题

已解决
罗乐乐乐乐乐乐乐2023-02-28
103
4

硬件是在公司使用的,当前系统镜像为LNX5.10_REL_CS_PL3.0_2022081003 release,天工开物版本为horizon_j5_open_exp。在执行bin模型推理时遇到了以下问题 :

1.bin文件能通过hrt_model_exec infer 和perf推理,且均无报错,但在c++代码中执行时,会在等待推理结束的过程中报错:

[ERROR][MEM][src/utils/mem_log.c:112] [ERROR][4881.26889][1894:1903][MEM_ALLOCATOR] <hb_mem_flush_buf_with_vaddr:1718> Invalid buf size 0.

[ERROR][MEM][src/utils/mem_log.c:112] [ERROR][4881.26894][1894:1903][HBMEM] <hbmem_cache_clean:356> Fail to clean buffer(ret=-16777214).

报错次数是6的倍数,但不影响后续的后处理和推理结果。

2.出现多次推理结果不一致的情况,详细的说,往往第一次推理的热力图结果置信度较高,但后续推理的热力图置信度均只有第一次的十分之一左右,且后续

多次推理的结果不再变化。检查的input_tensors值并无变化。

3.试图使用for循环多次推理,第二次推理时会报错segmentation fault。

初步怀疑这1,2两个问题的本质是一个问题,但不清楚如何解决,且只发生在使用某些bin文件时,使用示例bin则不会有这种问题。请问是否有过相关经验,且如何解决?

附件:
算法工具链
评论2
0/1000
  • 颜值即正义
    Lv.2

    您好。没看到您用的工具链版本是多少,可以用我们最新的1.1.40试一下呢。

    2023-03-01
    0
    2
    • 罗乐乐乐乐乐乐乐回复颜值即正义:

      您好 ,昨天升级到了1.1.40后仍然是这个问题。segmentation fault是for循环freeMem了input_tensor所致,但是之前的报错仍然无法理解和定位

      2023-03-01
      0
    • 颜值即正义回复罗乐乐乐乐乐乐乐:
      您好,方便用百度网盘提供onnx和bin模型吗,我们会进行细致分析。另外,第2点说的多次推理结果不一致的情况,是指执行一次程序获取到的多个推理结果不一致,还是多次执行程序且每次的结果不一致呢?
      2023-03-01
      0
  • 颜值即正义
    Lv.2
    2023-04-24
    0
    0