嵌入式设备算法的性能分析

时间:2010-01-22 09:29:37

标签: performance embedded analysis

我正在一个具有ARM926Ej-S处理器的嵌入式设备上做项目。我需要在设备上对算法进行性能分析。我是嵌入式环境的新手,对嵌入式设备的性能分析不太了解。

有人可以告诉我应该考虑哪些参数进行分析? 如何实施呢?

谢谢大家

2 个答案:

答案 0 :(得分:2)

您有什么样的调试环境?你有一个在线仿真器(ICE)吗?我建议您有一个调试环境,以便您可以随机手动暂停执行并检查程序的状态,包括调用堆栈(stackshots)。以这种方式手动对调用堆栈进行采样将显示代码中负责相当长时间的位置,以便您可以优化它们。 Here is a longer explanation.

这可能与您考虑的情况略有不同。许多人认为要找到要优化的东西,你需要时间代码,但事实并非如此。时间是一个很好的方法,可以找出你所做的事情是否有所作为,但有些人认为,叠加采样是找出做什么以产生差异的最佳方式。

答案 1 :(得分:1)

我对这些方法的看法是阅读参考手册(http://www.arm.com/miscPDFs/5499.pdf),该手册应涵盖您需要的一切。这将向您展示是否存在浮点单元,FPU中存在哪些缺点,使用DMA时需要注意的事项,缓存和内存布局以及内存总线速度以及其他许多内容。如果你想正确和有效地编程这个设备至关重要。

不幸的是,我从未使用过这个特定的设备,所以我不能指出具体的任何内容,但你肯定会在RefManual中找到所需的一切。如果您了解硬件,则可以分析算法特定部分的性能影响。但是你已经知道硬件的内部结构。