Go 工具 Pprof 輸出不一致
查詢圍繞著 Go 中提供分析功能的「pprof」工具的莫名其妙的輸出。儘管過去性能準確,但該工具最近開始產生不確定的結果。
無論正在分析的應用程式是什麼,即使是具有大量函數呼叫的相對複雜的應用程序,「pprof」工具也會返回乏味的呼叫圖和貧瘠的結果,儘管應用程式本身運行正常。
即使升級到 MacOS Yosemite 和 El Capitan 後,問題仍然存在。 Go v1.5.1 使用套件「github.com/davecheney/profile」。
為了產生設定文件,程式碼在「profile.Start」和「profile.Stop」的開頭包含「profile.Start」和「profile.Stop」。 main' 函數,然後是二進位檔案的建置和運行。但是,產生的輸出類似於以下內容:
(pprof) top 269.97kB of 269.97kB total ( 100%) flat flat% sum% cum cum% 269.97kB 100% 100% 269.97kB 100% (pprof)
提供的解決方案透過強調「pprof」呼叫中不存在二進位檔案來解決此差異。正確的命令結構是:
go tool pprof ./orig /path/to/profile.pprof
此更正可確保「pprof」以編譯的二進位檔案為目標,使其能夠提供所需的分析資訊。
以上是儘管應用程式效能準確,但為什麼我的 Go `pprof` 輸出顯示空白結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!