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.

如何准确知道CCS2.2for C6000的代码运行时间啊?



分析代码运行时间是不是用profiler的clock,然后除以主频呢?我做了,但计算结果有点大,因为同样的程序我在vc中也运行过,结果证明二者运行时间差不多,但dsp应该更快才对啊。是不是仿真的运行速度与使用的电脑主机的运行速度也有关呢?

如果我现在读取SDRAM 用的是EMIF的时钟,不可能数clk数 * 主频的倒数啊

请给出能准确测量运行一段代码所需的时间方法 ,谢谢

  • 通常可以用profiler的clock来计算一段函数运行所需的时钟cycle数:

    在函数开始处和结束处分别设置断点,当程序停止在第一个断点时清零clock,当程序停在第二个断点时clock的cycle数即为程序运行所需的时钟周期,除以主频即是所需时间。

    DSP在计算上有优势,但前提是你的程序或者是按照DSP的C intrisic 进行过优化,或者你用汇编实现的优化。最基本的优化是打开编译器的优化选项,让编译器帮你优化。

    最后,CCS2.2是不是有点过于古老了,建议选用最新的CCSv4或者v5进行测试。

  • 1. CPU Total是纯CPU计算的时间,但是并不代表实际的运行时间

    2. Cycle Total是纯CPU计算时间+Cache/Memory存取时间,和实际运行时间匹配

  • profiler里面哪里有什么  cpu total啊?  都是 cycle total的,一个是cycle total incl  一个是cycle total excl