专栏算法工具链build后的预测估计时间与板上验证时间相差过大

build后的预测估计时间与板上验证时间相差过大

已解决
ArthurThomas2020-11-12
165
4

模型build后的pref信息如最上面三个图所示,估计的latency是100ms,但是板上验证时间400ms左右,相差有些大了,请问如何优化

模型是384x768x3的双输入(推理视差的),在内部进行concat,此处的时间仅为infer_watch

算法工具链
评论2
0/1000
  • 芯链情报局
    Lv.4
    1)建议先在板端先运行 echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor,关闭 CPU 的自动降频

    2)然后增加一下 infer 的循环测试,看一下耗时的平均值。并在运行前声明 export HR_NODE_PROFILER=true,这样在运行时会保存一个 node*.json 文件,里面打印了各节点耗时情况。我们可以基于这个信息再具体分析一下
    2020-11-13
    0
    2
    • ArthurThomas回复芯链情报局:

      因为我做双目,模型是双目输入在内部concat的,这个被分配到了CPU上导致了速度很慢。(重做了个单输入的模型,输入preprocessed文件效果就很好)。所以想请问能不能在build的时候手动指定每个操作具体分配给CPU还是BPU

      2020-11-14
      0
    • 芯链情报局回复ArthurThomas:

      这个功能我们暂时还不支持。

      不过我个人理解,指定某 layer 运行在 CPU 或 BPU 上,其实更多是出于精度优化目标。因为基于性能优化目标,肯定是尽可能多地运行在 BPU 上去做加速。

      如果您那边的模型是两个相同维度输入进来后直接 concat 了,那建议是先预处理好之后再送给 BPU

      2020-11-14
      1
  • anming
    Lv.1
    你好,你的模型被切成多段, functional_1_subgraph_0; functional_1_subgraph_1, functional_1_subgraph_2,故总耗为 各分段耗时网络耗时总和。
    网络总耗时以上板实测为准。
    2020-11-13
    0
    0