Hexagon DSP系列记录(四)——plain C/intrinsics/asm汇编代码实现耗时比较

Hexagon_SDK版本:3.5.2
测试用机型:高通sm8150
对比downscaleBy2算法的耗时
参考官方示例:E:\Qualcomm\Hexagon_SDK\3.5.2\examples\common\downscaleBy2
参考官方文档:file:///E:/Qualcomm/Hexagon_SDK/3.5.2/docs/FastCV/Image%20Downscale.html
官方示例里有asm汇编的实现,但是本人不会汇编,也不打算写汇编,所以省略了汇编代码耗时的比较。

说明:plain C在CPU/DSP端都是能直接run的,不需要改动核心源码,所以会在以下几个维度的测试耗时
在CPU上plain C耗时
在DSP上plain C/intrinsics DSP/intrinsics HVX耗时
在DSP上单线程与多线程耗时
以下是最终统计的结果:
在这里插入图片描述
结论:

  1. 同一套plain C代码,DSP比CPU约慢10倍(3.52 vs 38.13);
  2. 使用DSP intrinsics,DSP也比CPU约慢4倍(3.52 vs 13.56);
  3. 使用HVX intrinsics,比CPU约快1倍(3.52 vs 1.43);
  4. DSP多线程比单线程约快一倍(因为底层DSP硬件支持2个线程);

建议:
跳过DSP intrinsics,直接上HVX intrinsics指令集。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值