想象一下你寫的應用程序,可替代現有的一些版本,你要比較,如果是更有效與否,我怎麼能簡單的基準測試我的Linux應用程序
,你可以簡單地使用time
像
time yourcommand
time oldcommand
並比較執行時間來檢查一些差異,但這不是很詳細
是否有類似的命令來檢查更多的數據?如內存使用情況,CPU利用率,CPU峯值,內存峯值等...
想象一下你寫的應用程序,可替代現有的一些版本,你要比較,如果是更有效與否,我怎麼能簡單的基準測試我的Linux應用程序
,你可以簡單地使用time
像
time yourcommand
time oldcommand
並比較執行時間來檢查一些差異,但這不是很詳細
是否有類似的命令來檢查更多的數據?如內存使用情況,CPU利用率,CPU峯值,內存峯值等...
一個好的實施time
實際上告訴了你一個什麼比壁鐘時間多得多。大多數Linux系統有一個,但擊往往掩蓋它支持其內置的時間,所以你必須把它叫爲/usr/bin/time
:
$ /usr/bin/time python -c "import numpy as np; np.empty(100000)"
0.12user 0.00system 0:00.13elapsed 96%CPU (0avgtext+0avgdata 12860maxresident)k
0inputs+0outputs (0major+3777minor)pagefaults 0swaps
這是CPU使用,內存使用情況等幾個統計數字的簡單Python命令。有關time
可以做什麼,請參閱手冊頁time(1)
。
對於內存在執行基準測試期間,還可以考慮使用'pmap'或簡單的'cat/proc/$(pidof yourcommand)/ maps'。 –
有沒有一種最佳的方式來做你在說什麼,因爲它取決於你的應用程序,以及你希望配置文件。
但是this post提供了一些關於如何配置Linux或特定應用程序的建議,這可能會幫助您沿着正確的方向。
你可能會找到更好的答案,如果你能告訴我們更具體地你希望配置文件,您正在使用的語言(S)等
什麼語言?你的一個分析器。 Strace可以提供一些食物信息,但一般情況下,您的專用配置文件 – exussum
在這種情況下,它是C++ vs c,但是我正在尋找一些簡單的命令,可以完成這些基本的但最重要的測量,它們完全覆蓋 – Petr