Чи є стандартизований спосіб R вимірювання часу виконання функції?
Очевидно, я можу взяти system.timeдо і після виконання, а потім прийняти різницю між ними, але хотілося б знати, чи є якийсь стандартизований спосіб або функція (хотілося б не винаходити колесо).
Здається, я пам’ятаю, що колись я використовував щось подібне нижче:
somesysfunction("myfunction(with,arguments)")
> Start time : 2001-01-01 00:00:00 # output of somesysfunction
> "Result" "of" "myfunction" # output of myfunction
> End time : 2001-01-01 00:00:10 # output of somesysfunction
> Total Execution time : 10 seconds # output of somesysfunction
Rprofприємно. Він надає профіль усіх процесів у фрагменті / функції коду.
require(microbenchmark)зараз (ще пару років тому) загальноприйнятим способом спільноти робити час. times <- microbenchmark( lm(y~x), glm(y~x), times=1e3); example(microbenchmark). Це робить статистичне порівняння lmпроти glmпонад 1000 спроб, а не system.timeвідчувати тільки один раз.
proc.timeна увазі причинуsystem.time- це те, що тобі потрібно.