分析程序的运行状况

通过探查器工具和查看运行时间的函数,能够得到程序如何运行的详细信息,并帮助找到需要改进的地方。

1.探查器工具

加速程序运行的第1步是找到花费时间比较多的代码行的位置并优化这些代码。使用探查器工具,可以找到这些位置。关于探查器,请参见1.2节的内容。

2.查看运行时间的函数

如果需要知道程序运行所花费的时间,或者比较不同程序的运行速度,可以使用查看运行时间的函数tic和toc。调用tic函数时启动计时器,后面的第1个toc函数终止它并报告所花费的时间。如:

code.matlab
tic
   - 运行要计算时间的程序段
toc

3.计算短程序运行所花费的时间

有的程序很短,运行时,因为速度太快,以至于使用tic和toc都得不到有用的信息。发生这种情况时,尝试把该程序放到一个循环中,然后将执行该循环所花费的时间除以循环次数得到运行那个短程序一次所花费的时间。如:

code.matlab
tic;
   for k = 1:100
         - 运行短程序100次
   end;
toc

则运行短程序一次所花费的时间等于执行整个循环所花费的时间除以100。

4.计算函数运行的时间-timeit函数

timeit函数的调用格式为:

code.matlab
t=timeit(f)

下面举一个例子。

code.matlab
>> A=rand(10000,200);
>> B=rand(200,10000);
>> f=@() sum(A.'.*B,1);
>> timeit(f)
ans =
    0.0365