関数のプロファイル結果をコンソールに出力
showprofile(fun)
Scilab関数
ある関数でshowprofileを使用するには,
この関数についてプロファイル機能を有効にしておく必要があります:
add_profiling コマンド.
この関数が一度コールされた後, showprofileをコールすると,
プロファイル結果がコンソールに出力されます.
出力される各行には(関数のヘッダ行を含む)対応する関数の行のプロファイル結果が含まれます. これには,この行のコール回数,合計CPU消費時間, この行の解釈に要したインタプリタ負荷, この行のソースコードが 含まれます. 出力の例を以下に示します:
|1 |0 |0| function x=fun(n)
|1 |0 |0| if n > 0 then
|1 |0 |2| x = 0;
|200 |0.01 |0| for k = 1:n
|200 |3.99 |5| s = svd(rand(n, n));
|... |... |.| ...
ここでは,関数の5行目が200回コールされ,合計CPU時間が3.99秒であったことがわかります.
show_profile は
profileに似ていますが,
profile はプロファイル結果を
行列に返すのに対して,
show_profile はコンソールに結果を出力するのみです.
注意: CPU時間の精度の制約(通常は1マイクロ秒)により, 実行時間が非常に速い実行された行は,CPUの合計時間が0と 表示される可能性があります.
// プロファイルする関数 function x=foo(n) if n > 0 then x = 0; for k = 1:n s = svd(rand(n, n)); x = x + s(1); end else x = []; end endfunction // 関数のプロファイルを有効化 add_profiling("foo"); // 関数を実行 foo(200); // プロファイル結果をコンソールに出力 showprofile(foo) | ![]() | ![]() |