1
我有一個C++二進制文件,我試圖衡量它是最壞的情況下的性能。 我 的/ usr/bin/time會-v <命令>非常高Elpased(掛鐘)時間和低系統時間在Linux中的含義
,並導致執行它是作爲
User time (seconds): 161.07
System time (seconds): 16.64
Percent of CPU this job got: 7%
Elapsed (wall clock) time (h:mm:ss or m:ss): 39:44.46
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 19889808
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 1272786
Voluntary context switches: 233597
Involuntary context switches: 138
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
我該如何解讀這樣的結果,是什麼原因造成這個應用程序藉此多少時間?
沒有等待用戶輸入,它基本上處理大型文本文件和數據庫。
我正在從Linux(OS)角度來看它。它是否造成了這種情況太多的上下文切換(Linux中的循環調度)?
這顯然是在等待什麼。最大駐地設置19GB?一百萬頁的錯誤?每秒超過500個。雖然沒有使用磁盤或其他任何東西,但看起來過多。 –