Apakah ada cara standar dalam R mengukur waktu eksekusi fungsi?
Jelas saya dapat mengambil system.time
sebelum dan sesudah eksekusi dan kemudian mengambil perbedaannya, tetapi saya ingin tahu apakah ada beberapa cara atau fungsi standar (ingin tidak menemukan roda).
Sepertinya saya ingat bahwa saya pernah menggunakan sesuatu seperti di bawah ini:
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
bagus. Ini memberikan profil dari semua proses dalam sepotong kode / fungsi.
require(microbenchmark)
sekarang (sejak beberapa tahun yang lalu) adalah cara standar komunitas untuk menentukan waktu. times <- microbenchmark( lm(y~x), glm(y~x), times=1e3); example(microbenchmark)
. Ini melakukan statistik perbandingan lm
vs glm
lebih dari 1000 mencoba, daripada system.time
pengujian hanya sekali.
proc.time
di pikiran sebabsystem.time
adalah salah satu yang Anda butuhkan.