2017-06-06 67 views
6

我目前使用xhprof庫分叉tideways.io分析myscript.php執行。從xhprof,我可以得到walltimecputimememoryusagepeakmemoryusage。我試着對一個symfony控制檯進行基準測試 - 所以我在它的ConsoleCommandEventTIDEWAYS_DISABLEConsoleTerminateEvent上加上TIDEWAYS_ENABLE()確定一個php腳本使用多少資源(cpu百分比和內存)

問題:

  1. 我怎麼能確定是否myscript.php佔用CPU的多少百分比是多少?我是否可以像cpuusage = cputime/realtime那樣計算百分比,例如here on serverfault
  2. 給定memoryusage (mu)peakmemoryusage (pmu)xhprof分析器,我該如何轉換或計算其ram的使用情況? (top結果顯示比memoryusage但不知何故,近peakmemoryusage價值高得多,所以我可以說,ram用法peakmemoryusage

票據的價值:

回答

0

我不確定是什麼您想要確定使用數據,但是如果您正在嘗試進行任何比較分析(例如, 「當我移除這個循環時,速度提高25%,使用的內存減少10%」)我建議你使用https://blackfire.io/

安裝簡單,使用方便。它還提供了請求之間的自動比較分析。它還會在內部進行多次傳遞以確保外部因素平均。

我無法確定CPU和內存使用情況數據是否準確。它相對於其他黑火中的數據是絕對準確的 - 如果你只是需要比較它,那麼它的效果非常好。如果你需要絕對數字的話,你應該用一大筆鹽(這樣的腳本有多少可以安全地在4GB服務器上運行?)。但我會說這非常準確。這絕對比xdebug的profiller更好。

+0

其實我沒有問題來檢索'cputime' - 我使用[xhprof](https://github.com/tideways/php-profiler-extension)[tideways.io](https: //tideways.io)而不是[blackfire.io](https://blackfire.io)。是什麼讓我好奇是否有可能計算一個'script.php'的CPU使用量,就像'cputime'值中的'top'或'htop'這樣的命令顯示的百分比一樣? –

+0

哎呀,對不起,我誤解了你的問題 –

相關問題