MATLAB中程序运行时间的计算方法

可能很少有人关注MATLAB中程序段的运行时间。在一般程序中确实很少使用这个运行时间。在MATLAB和C++混合编程中对比混合编程和只用MATLAB编程所耗时间时,这个还是有用的。个人感觉比较有意思而且很简单,就简单记录下来吧。
    我们如果要计算一段程序运行时间,可以在这段程序的第一句前添加语句“tic”,在该端程序后添加语句“t=toc”即可,那么返回值t即为该段程序所耗时间。
    看下例:
     a=[1:900000];
     b=zeros(1,900000);
     tic
     for i=1:900000
         b(i)=2*a(i);
     end
     t=toc
 
    a为一个递增数组,b是一个与a同大小的空数组。可能有人问,为什么要先创建一个空数组,原因是这样的,事先声明一个数组然后往里填数,这样比来一个数扩充一个数的位置要省时间的。
    我们为了统计for循环的耗时,则在相应位置添加tic和toc语句即可。运行结果t= 0.0150,单位是秒。
    为了验证下划线句的正确性,我们可以注释掉“b=zeros(1,900000);”句,即在该句前加“%”,再次计算耗时……我等了一会儿了,没出结果,我们减少循环次数,令其从1到9000,得出结果t=0.4530秒,仍是0.0150秒的30.2倍。

你可能感兴趣的:(MATLAB中程序运行时间的计算方法)