我使用的是OMAPL-138芯片,在LINUX下编译整个双核工程(LINUX+BIOS),通过改DSP下面的makefile文件的优化选项(由O2改为O3,如图所示),但是通过在板卡上测试,在DSP段的程序执行时间没有变化。是我加优化选项的位置错了吗?我在DSP中有许多FOR循环。
Shine:
请问是怎么测程序时间的?用TSCL, TSCH寄存器测的吗?
shuo wang:
回复 Shine:
先在ARM端执行gettimeofday(&now,NULL);time1= now.tv_sec * 1000 + now.tv_usec/1000;
然后数据通过共享内存发送到DSP,DSP计算完成后,再通过共享内存发送给ARM;
ARM在接收到DSP计算完成数据后执行gettimeofday(&now,NULL);time2= now.tv_sec * 1000 + now.tv_usec/1000;
time2-time1大致就是数据在DSP里面的运行时间(我们的数据计算比较大,都是秒级别的)