Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

toc

从秒表读取已用时间

说明

示例

toc 读取由调用 tic 函数启动秒表计时器以来经过的时间。MATLAB® 读取执行 toc 函数时的内部时间,并显示最近一次不带输出调用 tic 函数以来经过的时间。经过的时间以秒为单位表示。

toc(timerVal) 显示自调用对应于 timerValtic 函数以来经过的时间。

示例

elapsedTime = toc 返回自最近一次调用 tic 函数以来经过的时间。

示例

elapsedTime = toc(timerVal) 返回自调用对应于 timerValtic 函数以来经过的时间。

示例

全部折叠

测量创建两个随机矩阵所需的时间。

tic
A = rand(12000,4400);
B = rand(12000,4400);
toc
Elapsed time is 2.208703 seconds.

测量自调用 tic 函数以来到程序的不同时间点所经过的时间。

tic
A = rand(12000,4400);
B = rand(12000,4400);
toc
Elapsed time is 1.069276 seconds.
C = A.*B;
toc
Elapsed time is 1.231270 seconds.

使用一对 tictoc 调用来报告逐元素矩阵乘法所需的总时间;使用另一对调用来报告程序的总运行时间。

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.7301
tEnd = toc(tStart)      % pair 2: toc
tEnd = 11.6497

变量 tMul 包括用在乘法计算上的总时间。tEnd 指定程序开始时调用 tic 函数以来经过的时间。

输入参数

全部折叠

以前调用 tic 函数保存的内部计时器的值,指定为 uint64 类型的标量。

提示

  • 连续调用没有输入的 toc 函数,会返回自最近调用 tic 以来的已用时间。此属性使您能够从单个时间点进行多次测量。

    连续调用具有相同的 timerVal 输入的 toc 函数,会返回自对应于 timerValtic 函数调用以来的已用时间。

  • 有时程序运行速度太快,导致 tictoc 无法提供有用的数据。如果您的代码运行速度快于 1/10 秒,请考虑测量它在循环中运行的时间,然后求平均值以计算单次运行的时间。有关详细信息,请参阅衡量代码的性能

  • 以下操作会导致意外输出:

    • 使用 tictoc 确定 timeit 的时间
    • timeit 计时的函数内使用 tictoc

扩展功能

在 R2006a 之前推出