Saya menggunakan system.time(expression)
untuk mengukur waktu eksekusi untuk fungsi R.
Output yang saya dapatkan untuk panggilan tersebut
system.time(myfunction())
adalah:
user system elapsed
117.36 5.65 127.86
Apa yang diukur 'pengguna' dan 'sistem'?
Jawaban:
Ini dibahas di
?proc.time
(system.time()
mengembalikan objek kelas"proc.time"
):Details: ‘proc.time’ returns five elements for backwards compatibility, but its ‘print’ method prints a named vector of length 3. The first two entries are the total user and system CPU times of the current R process and any child processes on which it has waited, and the third entry is the ‘real’ elapsed time since the process was started.
....dan
Value: .... The definition of ‘user’ and ‘system’ times is from your OS. Typically it is something like _The ‘user time’ is the CPU time charged for the execution of user instructions of the calling process. The ‘system time’ is the CPU time charged for execution by the system on behalf of the calling process._
sumber
Penjelasan paling jelas yang pernah saya baca tentang perbedaan antara
user
dansystem
waktu berlalu diberikan oleh William Dunlap di [R-help] :Meskipun
?proc.time
mengembalikan sesuatu yang serupa, deskripsi ini jauh lebih mudah dipahami bagi saya.sumber
Berikut beberapa penjelasan sederhana:
Waktu Berlalu adalah waktu yang dibebankan ke CPU untuk ekspresi.
Waktu Pengguna adalah waktu jam dinding. Waktu yang Anda alami sebagai pengguna.
Biasanya kedua waktu tersebut relatif dekat. Tetapi mereka mungkin berbeda dalam beberapa situasi lain. Sebagai contoh:
sumber
Karena ini bersifat umum, dari Wikipedia:
http://en.wikipedia.org/wiki/Time_(Unix)#User_Time_vs_System_Time
sumber
Karena variabel waktu tersebut ditentukan oleh OS Anda, Anda dapat mengambil informasi tentang bagaimana mereka dihitung dengan mengeksekusi
man time
di shell Anda (di Unix):Definisi variabel waktu yang disebutkan dapat ditemukan di sini :
Klarifikasi tentang perbedaan antara waktu pengguna dan sistem dijelaskan dalam jawaban daroczig dan di tempat lain di SO :
sumber