2013-06-22 26 views
1

想象一下你寫的應用程序,可替代現有的一些版本,你要比較,如果是更有效與否,我怎麼能簡單的基準測試我的Linux應用程序

,你可以簡單地使用time

time yourcommand 
time oldcommand 

並比較執行時間來檢查一些差異,但這不是很詳細

是否有類似的命令來檢查更多的數據?如內存使用情況,CPU利用率,CPU峯值,內存峯值等...

+1

什麼語言?你的一個分析器。 Strace可以提供一些食物信息,但一般情況下,您的專用配置文件 – exussum

+0

在這種情況下,它是C++ vs c,但是我正在尋找一些簡單的命令,可以完成這些基本的但最重要的測量,它們完全覆蓋 – Petr

回答

3

一個好的實施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)

+0

對於內存在執行基準測試期間,還可以考慮使用'pmap'或簡單的'cat/proc/$(pidof yourcommand)/ maps'。 –

0

有沒有一種最佳的方式來做你在說什麼,因爲它取決於你的應用程序,以及你希望配置文件。

但是this post提供了一些關於如何配置Linux或特定應用程序的建議,這可能會幫助您沿着正確的方向。

你可能會找到更好的答案,如果你能告訴我們更具體地你希望配置文件,您正在使用的語言(S)等