tic
启动秒表计时器
语法
tic
timerVal = tic
说明
tic 与 toc 函数结合使用,可以测量经过的时间。tic 函数记录当前时间,toc 函数使用记录的值计算经过的时间。
timerVal = tic 将当前时间存储在 timerVal 中以便您将其显式传递给 toc 函数。如果需要多次调用 tic 来对同一代码的不同部分计时,则传递此值非常有用。timerVal 是仅对 toc 函数有意义的整数。
示例
测量创建随机矩阵的时间
尝试此示例
测量创建两个随机矩阵所需的时间。
tic
A = rand(12000,4400);
B = rand(12000,4400);
toc
Elapsed time is 1.482072 seconds.
测量自 tic 调用以来经过的不同时间间隔
尝试此示例
测量自调用 tic 函数以来到程序的不同时间点所经过的时间。
tic
A = rand(12000,4400);
B = rand(12000,4400);
toc
Elapsed time is 1.214253 seconds.
C = A.*B;
toc
Elapsed time is 1.406756 seconds.
使用多个 tic 调用来测量时间
尝试此示例
使用一对 tic 和 toc 调用来报告逐元素矩阵乘法所需的总时间;使用另一对调用来报告程序的总运行时间。
tStart = tic; % pair 2: tic
n = 10;
T = zeros(1,n);
for i = 1:n
A = rand(12000,4400);
B = rand(12000,4400);
tic % pair 1: tic
C = A.*B;
T(i)= toc; % pair 1: toc
end
tMul = sum(T)
tMul = 0.6832
tEnd = toc(tStart) % pair 2: toc
tEnd = 13.7944
变量 tMul 包括用在乘法计算上的总时间。tEnd 指定程序开始时调用 tic 函数以来经过的时间。
提示
-
连续调用
tic函数会覆盖内部记录的开始时间。 -
clear函数不会重置tic函数调用记录的起始时间。 -
有时程序运行速度太快,导致
tic和toc无法提供有用的数据。如果您的代码运行速度快于 1/10 秒,请考虑测量它在循环中运行的时间,然后求平均值以计算单次运行的时间。有关详细信息,请参阅衡量代码的性能。 -
以下操作会导致意外输出:
- 使用
tic和toc确定timeit的时间 - 在
timeit计时的函数内使用tic和toc
- 使用
另请参阅
clock | cputime | etime | profile | timeit | toc
主题
在 R2006a 之前推出
>> tic
A = rand(12000,4400);
B = rand(12000,4400);
toc
时间已过 1.698622 秒。
>> C = A.*B;
toc
时间已过 83.219872 秒。
>> C = A.*B;
toc
时间已过 113.770886 秒。
>> tStart = tic; % pair 2: tic
n = 10;
T = zeros(1,n);
for i = 1:n
A = rand(12000,4400);
B = rand(12000,4400);
tic % pair 1: tic
C = A.*B;
T(i)= toc; % pair 1: toc
end
tMul = sum(T)
tMul =
0.6689
>> tEnd = toc(tStart) % pair 2: toc
tEnd =
30.3862
>>
```
\
```