专栏算法工具链batch维度并行

batch维度并行

已解决
yanglinxia2023-04-24
31
12

用户您好,请详细描述您所遇到的问题,这会帮助我们快速定位问题~

1.芯片型号:J5
2.天工开物开发包OpenExplorer版本:J5_OE_1.1.40
3.问题定位:板端部署等
4.问题具体描述:PTQ模型导出yaml配置中,若设置了input_batch: 4, 板端hrt_model_exec perf 耗时36ms; 若不设置batch默认为1,板端耗时9.26ms。差不多就是四倍耗时,batch维度没有并行吗?
算法工具链
评论2
0/1000
  • 颜值即正义
    Lv.2
    您好,首先latency的评估以单核单线程为准,也就是使用hrt_model_exec perf时,--thread_num需要设置为1,先确认这步是否正确。其次,对于小模型(边长
    2023-04-24
    0
    10
    • yanglinxia回复颜值即正义:

      设置--thread_num 1,耗时和上面一样,尝试设置1-8,线程数越大,耗时反而越大?这里模型输入为704×960

      model batch :4 --thread_num 8

      2023-04-24
      0
    • 颜值即正义回复yanglinxia:
      多线程的latency比单线程高是正常的,因为线程之间有调度开销,在多线程下主要关注FPS,FPS肯定是有提升的。在评估latency的时候,只看单线程。模型输入为704×960,已经是一个输入较大的模型了,因此多batch下性能提升不明显也是正常的。
      2023-04-24
      0
    • yanglinxia回复yanglinxia:

      还是这个模型,batch为4,当我把模型结尾的三个算子强制运行在BPU上,开发机hb_perf 工具统计的耗时为什么减少而不是增多?我理解hb_perf统计BPU耗时,现在BPU上执行多三个Node,耗时要增多啊。

      2023-04-24
      0
    • yanglinxia回复颜值即正义:

      那这个较大模型,输入batch为4,从模型导出、板端执行的角度看有什么措施降低latency?

      2023-04-24
      0
    • 颜值即正义回复yanglinxia:

      方便看一下尾部算子的结构图吗,那三个算子之前是哪个BPU算子?

      2023-04-24
      0
    • 颜值即正义回复yanglinxia:
      2023-04-24
      0
    • yanglinxia回复颜值即正义:

      concat 算子

      2023-04-24
      0
    • 颜值即正义回复yanglinxia:

      hb_perf只是一个参考,实际还是要看上板实测的数据哈,如果确实很在意,可以在编译的时候将编译参数组的debug设置为true,那么hb_perf之后就可以看到每一个BPU算子的耗时了(不过debug设置true之后整体耗时会增加)

      2023-04-24
      0
    • yanglinxia回复颜值即正义:

      HzSQuantizedConv 之后这个HzRequantize是什么作用?

      2023-04-24
      0
    • 颜值即正义回复yanglinxia:

      你可以点开onnx模型的这个算子,看一下经过这个算子前后,数据有什么变化。

      2023-04-24
      0
  • 颜值即正义
    Lv.2
    2023-04-24
    0
    0