我有兴趣测试NXP LPC 804微控制器上各种ETL和STL库函数的执行速度。目前,我通过为每个函数创建一个C++程序并使用示波器测量结果来进行测试,但这往往会产生相当不稳定的结果。
我已经调查了各种基准测试套件,如Nanobench和Google Benchmark,但都没有用。有人知道更有效的解决方案吗?因为这更多是一种方法学上的探讨而不是编程问题,所以我没有任何代码附加。
如果有更适合的Stack Exchange渠道,我将很乐意删除此帖子并在那里重新发布。谢谢!
编辑:为了增加一些细节:
- 通过“不稳定的”结果,我指的是当我在while循环中连续运行一个函数时,示波器给出的周期持续时间会在几个不同的频率之间闪烁。我注意到这在毫秒尺度上比微秒尺度上更频繁。
- 以下是示例函数基准测试的结构:
int main() {
while (true) {
// set GPIO pin
// execute some function
// clear GPIO pin
}
return 0;
}
- 由于这是一项正式的研究评估,我被建议使用标准基准测试套件或示波器,而不是自己使用定时器创建基准测试函数,因为据说微控制器定时器相对不太精确。