主要内容

抽搐

ストップウォッチタ▪▪マ▪▪を開始

説明

抽搐は,関数tocとともに機能し,経過時間を測定します。関数抽搐は現在の時刻を記録し,関数tocは記録された値を使用して経過時間を計算します。

timerVal = ticは現在の時刻をtimerValに保存し,関数tocに明示的に受け渡せるようにします。この値を受け渡すことは,同じコ,ドの異なる部分の時間を測定するために抽搐の呼び出しが複数存在する場合に便利です。timerValは関数tocのみで意味を持整数です。

すべて折りたたむ

2の乱数行列を作成するために必要な時間を測定します。

tic A =兰特(12000,4400);B =兰特(12000,4400);toc
运行时间为0.810152秒。

プログラムの複数の異なるポesc escントで,関数抽搐の呼び出しからの経過時間を測定します。

tic A =兰特(12000,4400);B =兰特(12000,4400);toc
运行时间为0.874749秒。
C = a .* b;toc
运行时间为0.955564秒。

抽搐およびtoc呼び出しの1のペアを使用して,。もう1のペアを使用して,。

tStart = tic;% pair 2: ticN = 10;T = 0 (1,n);i = 1:n A =兰特(12000,4400);B =兰特(12000,4400);抽搐% pair 1: ticC = a .* b;T (i) = toc;% pair 1: toc结束tMul = sum(T)
tMul = 0.4680
tEnd = toc(tStart)% pair 2: toc
tEnd = 7.9635

変数tMulには乗算にかかった合計時間が含まれます。往往はプログラム開始時に関数抽搐呼び出してからの経過時間を指定します。

ヒント

  • 関数抽搐を連続して呼び出すと,内部に記録された開始時間が上書きされます。

  • 関数清晰的は,関数抽搐の呼び出しによって記録される開始時間をリセットしません。

  • 場合によっては,プログラムの実行が速すぎて抽搐tocでは有効なデ,タを取得できない場合があります。コードの実行が1/10秒より速い場合は,コードをループ内で実行して測定し,次に平均を算出して1回の実行時間を求めることを検討してください。詳細にいては,コ,ドのパフォ,マンスの測定を参照してください。

  • 次の操作を実行すると,予期せぬ出力が発生します。

    • 抽搐およびtocを使用した时间の時間測定
    • 时间によって時間測定される関数内での抽搐tocの使用

拡張機能

バ,ジョン履歴

R2006aより前に導入