This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

新手求教如何提升算法运行速度

Other Parts Discussed in Thread: TMS320C6678

        我有一段语音MOS评估的算法。由于是DSP的初学者,我只是简单地把这个算法移植到TMS320C6678上进行运行。算法运行在TMS320C6678的core 0上,代码存放在MSMCSRAM中,堆栈空间放在DDR3内存中,DSP运行在1Ghz主频上。编译器的Optimization选项卡中,Optimization level选择的是3,即最高级的优化,Optimize for code size选择0,不对代码空间 进行优化。算法运行花费18907023456个时钟周期,耗时18.9秒。

        但是我在其他平台上运行过同一个算法。在ATOM D525处理器上运行该算法耗时2.6秒,ATOM D525处理器是个工作在1.8Ghz的双核四线程的CPU,运行该算法时占用了25%的CPU,即1个线程。在三星的S5PV310的处理器上运行算法,耗时17秒,S5PV310处理器采用ARM-CORTEX-A9内核,是个双核处理器,工作在1GHz的主频上,算法运行时占用了50%的CPU,即一个处理器内核。

        我认为运行算法DSP一定比ARM更加高效,但是实际测试情况却是比ARM稍慢,和X86构架的ATOM处理器根本无法比。

        对于DSP处理器我知之甚少。我想,一定是我那里没有设定好,或者很多可优化的地方没有优化,请问除了针对DSP处理器进行代码优化,还有其他途径能够显著改善这个算法在DSP上的运行效率吗?谢谢!