1

我正在运行一个 matlab 程序,它的运行时间很长(几天)。我使用 tic 和 toc 函数测量程序各个步骤的运行时间。有时我会待机或休眠我的笔记本电脑以安全运输它。我的问题是待机对 tic-toc 函数测量的经过时间有任何影响吗?

谢谢你!

4

1 回答 1

2

加上测试评论!但这里有一些阅读:

http://www.mathworks.com/company/newsletters/articles/improvements-to-tic-and-toc-functions-for-measuring-absolute-elapsed-time-performance-in-matlab.html

简而言之,tic/toc 基于操作系统提供的高分辨率计时器。 gettimeofday()在 Linux 和QueryPerformanceCounter()Windows 的情况下。这两个 API 都处理挂钟时间(不是 CPU 时间,也不是直接循环计数),所以我希望您的测试显示 tic 和 toc 在您的计算机处于睡眠状态且不进行任何计算时继续计数。

解决这个问题的一种方法是测量 tic/toc 以保证在几秒到几分钟之间完成的代码的小增量。然后,在聚合或报告时间结果之前,将任何大于某个安全运行时阈值(5 分钟?10 分钟?)的结果视为已被挂起中断。

于 2012-06-01T20:25:59.817 回答