簡體   English   中英

是否有適用於Linux的類似工具,如Mac OS X上的Shark?

[英]Is there any similar tool for Linux that works like Shark on Mac OS X?

Mac OS X上的Shark是在運行的系統上對應用程序進行性能分析的出色工具。 Linux是否有類似的工具?

OProfile看起來可能是,有人使用過嗎?

擴展另一個答案,我使用valgrind( http://valgrind.org )的'callgrind'選項。 然后從KDE安裝kcachegrind ,以獲得一個不錯的GUI界面。

作為虛擬教程,請執行以下操作:

1)用調試信息編譯您的應用程序。 嘗試在啟用和禁用優化的情況下進行性能分析是一個好主意,禁用優化會獲得更多信息,但它的准確性可能較低(特別是微小的功能似乎會占用應有的時間。

2)運行:

valgrind --tool=callgrind <name of your app> <your app's options>

這將產生一個名為“ callgrind.something”的文件,您可以將其加載到kcachegrind中。

您還可以查看:

valgrind --tool=cachegrind <name of your app> <your app's options>

它將為您提供有關應用程序如何與CPU緩存交互的信息。

請注意,雖然valgrind和shark看起來像是類似的應用程序,但它們的工作方式卻大不相同。 當您在valgrind中運行應用程序時,它的運行速度將比正常運行速度慢許多倍(通常慢40倍以上),但是您得到的結果比shark的准確得多。 我傾向於同時使用兩者,因此我可以獲得盡可能多的信息!

您可能可以嘗試Valgrind( http://valgrind.org/ )。 它們同時具有運行時和編譯時性能分析工具。

回答這個問題有點晚,但是最接近的答案是Zoom Shark的一些團隊對此進行了研究。

OProfile是一種工具,可以對應用程序和它進行的系統調用進行基於采樣的分析。 這樣可以查看有關花費時間的詳細信息。 它沒有GUI,但是有幾個前端可以讓您處理運行中的信息。

我已經在台式機應用程序和嵌入式系統中廣泛使用了它。 解釋結果需要花費一些精力,但是在這里調用圖輸出確實有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM