24小时热门版块排行榜    

查看: 2021  |  回复: 2

ghw_nit

铁杆木虫 (正式写手)

[求助] 同样的程序,不同时刻运行其执行时间不同,这是怎么回事? 已有2人参与

我要比较一个问题的两种算法的效率问题,因此采用tic与toc指令计算程序的执行时间,现在我发现即使是对同一段程序,我不同时刻运行也会有不同的运行时间,这是为什么呢?这还怎么比较呢?真实奇怪。大家可以看一下,同样的程序呀,隔一会结果就会变一下
tic;
[v_20,lamda_20]=eig(C);
toc;
Elapsed time is 0.002184 seconds.
>> tic;
[v_20,lamda_20]=eig(C);
toc;
Elapsed time is 0.002045 seconds.
>> tic;
[v_20,lamda_20]=eig(C);
toc;
Elapsed time is 0.002038 seconds.
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

onesupeng

金虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
这很正常,不同时间机器的状态本身就有差异~比如你看CPU、内存状态,都是不断变化的
长期招收博士生,参见http://fsl-unsw.com
2楼2014-01-29 12:55:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cobrasq

金虫 (小有名气)

【答案】应助回帖

原因是在后两次运行时变量內存已经初姶化好了。如果要得到相当的运行时间,应该在每次的tic之前运行clear all
3楼2014-01-31 11:31:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ghw_nit 的主题更新
信息提示
请填处理意见