搜索
bottom↓
回复: 17

DSP和cortex A9做运算对比,续二

[复制链接]

出0入22汤圆

发表于 2017-4-13 09:46:22 | 显示全部楼层 |阅读模式
本帖最后由 zxq6 于 2017-4-13 09:50 编辑

上次做了普通运算下,DSP和Cortex A9浮点运算能力的对比,这次来测测定点运算:
前面的两个帖子见这里:

http://www.amobbs.com/forum.php? ... p;page=1#pid9736286
http://www.amobbs.com/thread-5672242-1-1.html

定义如下:
  1. volatile unsigned short r[256],g[256],b[256],z[256];
  2. volatile unsigned short i,j;
复制代码


测试代码如下:

  1. while(2)
  2.         {
  3.                 *pFIO_FLAG_D ^= 0x0002;
  4.                 for(j=0;j<256;j++)
  5.                 {
  6.                         z[j]=r[j]+25+g[j]+50+b[j]*0.5+k[j]/3;
  7.                 }
  8.         }
复制代码

测试结果:
ADSP-BF531,运行一次需要120us左右。
Cortex A9,运行一次需要55us左右。

看来,没有经过优化的DSP,16bit定点运行的速度,任然比A9还是有差别。

出0入0汤圆

发表于 2017-4-13 11:58:23 | 显示全部楼层
杠上了。呵呵。
继续。。

出0入0汤圆

发表于 2017-4-13 12:07:23 | 显示全部楼层
我一直认为DSP的浮点处理能力很强,如果对比测试严格,看结果,应该改变看法了。

出0入0汤圆

发表于 2017-4-13 12:14:01 | 显示全部楼层
数据2KB+,这个完全fit在Cache里。
如果BF没有Cache,访存又慢的话,CA9会明显占优势。

出0入0汤圆

发表于 2017-4-13 12:48:22 来自手机 | 显示全部楼层
bf 想快运算部分可以试试用专用函数来跑。

出0入0汤圆

发表于 2017-4-13 17:27:15 | 显示全部楼层
#在这里快速回复#定点计算你乘以0.5是几个意思?

出0入0汤圆

发表于 2017-4-13 17:28:28 | 显示全部楼层
再说了,DSP似乎没有除法指令,尽量不要用除法

出0入0汤圆

发表于 2017-4-13 17:46:16 来自手机 | 显示全部楼层
0.5会变成定点小数?我居然不知道……

出0入22汤圆

 楼主| 发表于 2017-4-13 18:00:08 | 显示全部楼层
xivisi 发表于 2017-4-13 17:46
0.5会变成定点小数?我居然不知道……

*0.5,已经被编译器优化成为/2了,最终结果跟">>1"一样的。

出0入0汤圆

发表于 2017-4-13 18:03:20 来自手机 | 显示全部楼层
zxq6 发表于 2017-4-13 18:00
*0.5,已经被编译器优化成为/2了,最终结果跟">>1"一样的。

楼主检查一下生成的汇编代码,是这样吗?

出0入22汤圆

 楼主| 发表于 2017-4-13 18:07:43 | 显示全部楼层
xivisi 发表于 2017-4-13 18:03
楼主检查一下生成的汇编代码,是这样吗?

没去看汇编代码,从执行时间上来看,是一样的。
或者说,这几种写法,从执行效率上看,是没有区别的。

出0入0汤圆

发表于 2017-4-13 18:15:07 | 显示全部楼层
能否试试, 全部用整数乘法加法看看,  (去掉除法)
另外, 问问两芯片工作频率?

出0入22汤圆

 楼主| 发表于 2017-4-13 19:46:22 来自手机 | 显示全部楼层
本帖最后由 zxq6 于 2017-4-13 19:47 编辑
PEcontrol 发表于 2017-4-13 18:15
能否试试, 全部用整数乘法加法看看,  (去掉除法)
另外, 问问两芯片工作频率? ...


你的意思是不用✘0.5么?要不你写个表达式我帮你测测看吧。
芯片工作频率,531是400M,a9是667M

出0入0汤圆

发表于 2017-4-13 20:12:55 | 显示全部楼层
zxq6 发表于 2017-4-13 19:46
你的意思是不用✘0.5么?要不你写个表达式我帮你测测看吧。
芯片工作频率,531是400M,a9是667M ...

我也不知道咋测, 只是觉得相差有点大 ,

不知是否有FFT程序, 跑一下FFT试试?

出0入22汤圆

 楼主| 发表于 2017-4-13 20:41:09 来自手机 | 显示全部楼层
PEcontrol 发表于 2017-4-13 20:12
我也不知道咋测, 只是觉得相差有点大 ,

不知是否有FFT程序, 跑一下FFT试试? ...

请看我前面两个帖子,里面有fft的对比。

出0入22汤圆

 楼主| 发表于 2017-4-13 20:41:51 来自手机 | 显示全部楼层
http://www.amobbs.com/forum.php?mod=viewthread&tid=5672242&mobile=2

出0入84汤圆

发表于 2017-4-13 22:09:47 | 显示全部楼层
zynq是双核的A9, BF531太老了,DSP要用专用库函数才可以。
比浮点找个浮点dsp来对比,A9性能不错,但是跟新款的浮点DSP还是有很大差距的。
前段时间帮做视频的朋友选型过,正好了解过。给你个网址,TI官方的对比。
http://www.ti.com.cn/lsds/ti_zh/ ... ore-benchmarks.page
别说A9了 直接1G的A15。
纯数据运算DSP绝对优势,专业和业余的差别。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入84汤圆

发表于 2017-4-13 22:15:22 | 显示全部楼层
DSP不用DSP库还是DSP吗。。不用dsp库不叫没优化,用好DSP库才叫优化。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 01:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表