求教!
我目前在6657的开发板上运行了DSPLIB里面的FFT库函数。在程序里调用了库函数两次。第一次运行时间是6ms,然后用malloc分配了大量内存,再调用库函数结果执行时间是27ms。为什么malloc会影响同一函数的执行时间呢?怎么解决呢?
FFT函数是我在提供的库上改编的。代码两次打印出的时间第一次是6ms第二次是27ms,同样的函数,中间的差别就是malloc。这个怎么解决呢?谢谢!
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.
求教!
我目前在6657的开发板上运行了DSPLIB里面的FFT库函数。在程序里调用了库函数两次。第一次运行时间是6ms,然后用malloc分配了大量内存,再调用库函数结果执行时间是27ms。为什么malloc会影响同一函数的执行时间呢?怎么解决呢?
FFT函数是我在提供的库上改编的。代码两次打印出的时间第一次是6ms第二次是27ms,同样的函数,中间的差别就是malloc。这个怎么解决呢?谢谢!
感谢您的指导!我的代码是这样的:
执行函数B(参数1,参数2)
分配一些内存大约500K
执行函数B(参数1,参数2)
其他处理(代码量比较大)。
我的测试是这样的,执行函数B是完全一样的函数,就是调用位置一是分配内存前一是分配内存后,发现这两次函数B执行的时间不同,分配内存前6ms,分配内存后27ms差别较大。然后我把其他处理屏蔽掉,发现两次执行B函数的时间又差不多。所以我觉得是其他处理影响了第二次函数B的执行。我的疑问是,为什么在不同位置调用相同函数会有这么大的执行时间的差别?工程中的其他代码会影响同一函数的执行时间吗?